Java程序检查生日并打印生日快乐信息


在本文中,我们将了解如何检查生日并打印生日快乐信息。生日检查是通过比较今天日期和给定的生日日期来完成的。

问题陈述

编写一个程序,检查今天的日期是否与预定义的生日日期匹配。如果日期匹配,程序应打印“生日快乐”信息,否则应指出今天不是生日。以下是相同的演示 -

输入

Birthday Date: 15 July

输出

Today’s Date is 20-12-2021
Today is not my birthday

使用LocalDate类检查生日

以下是使用LocalDate类检查生日的步骤

  • java.time包导入java.time.LocalDatejava.time.Month
  • 设置生日日期(15)和月份(Month.JULY)的变量。
  • 使用LocalDate.now()检索当前日期。
  • 从当前日期中提取日期使用getDayOfMonth()和月份使用getMonth()
  • 使用if循环,将当前月份和日期值分别与输入的日期和月份值进行比较。如果值匹配,则结果为true。
  • 如果当前日期和月份与生日日期和月份匹配,则打印“生日快乐!!”。否则,打印“今天不是你的生日”。

示例:使用'LocalDate'检查生日

import java.time.LocalDate;
import java.time.Month;
public class HappyBirthday {
   public static void main(String args[]) {
      int date_of_birth = 15;
      Month month_of_birth = Month.JULY;
      System.out.println("The required packages have been imported");
      LocalDate current_date = LocalDate.now();
      System.out.println("Today's Date is " + current_date);
      System.out.println("The birthday is defined as : " +date_of_birth + " " +month_of_birth);
      int date = current_date.getDayOfMonth();
      Month month = current_date.getMonth();
      if(date == date_of_birth && month == month_of_birth) {
         System.out.println("HAPPY BIRTHDAY TO YOU !!");
      } else {
         System.out.println("Your birthday is not today ");
      }
   }
}

输出

The required packages have been imported
Today's Date is 2022-02-09
The birthday is defined as : 15 JULY
Your birthday is not today

代码说明

提供的代码使用Java的LocalDate和Month类来检查今天是否与指定的生日日期匹配。它将生日初始化为7月15日,然后使用LocalDate.now()检索当前日期。代码从当前日期中提取当前日期和月份,并将它们与预定义的生日日期和月份进行比较。如果当前日期与生日匹配,则打印“生日快乐!!”,否则打印“今天不是你的生日”。此方法确保生日检查仅基于日期和月份,忽略年份。

使用'SimpleDateFormat'类检查生日

以下是使用SimpleDateFormat类检查生日的步骤

  • 从java.text和java.util包导入SimpleDateFormatDate
  • 使用格式“MM-dd”创建一个SimpleDateFormat对象。
  • 使用new Date()获取当前日期。
  • 使用SimpleDateFormat对象将当前日期格式化为字符串。
  • 将生日字符串设置为“10-15”。
  • 如果格式化的当前日期字符串与生日字符串匹配,则打印“生日快乐!!”。- 否则,打印“今天不是你的生日”。

示例:使用'SimpleDateFormat'检查生日

这里,整数先前已定义,其值在控制台上访问和显示。

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Main {
   public static void main(String[] args) {
      SimpleDateFormat s = new SimpleDateFormat("MM-dd");
      Date today = new Date();
      String todayString = s.format(today);
      String myBirthdayString = "10-15"; // Assuming your birthday is October 15th
      System.out.println("The birthday date is defined as " +myBirthdayString);
      if (todayString.equals(myBirthdayString)) {
         System.out.println("Happy Birthday!!");
      } else {
         System.out.println("Today is not your birthday");
      }
   }
}

输出

The birthday date is defined as October 15th
Happy Birthday!!

代码说明

提供的代码使用SimpleDateFormat来检查今天是否与指定的生日日期匹配。它使用“MM-dd”模式初始化一个SimpleDateFormat对象,以将日期格式化为月份和日期。然后,代码使用new Date()获取当前日期,将其格式化为字符串,并将此字符串与预定义的生日字符串(“10-15”)进行比较。如果格式化的当前日期与生日字符串匹配,则打印“生日快乐!!”,否则打印“今天不是你的生日”。此方法确保生日检查仅基于日期和月份。

更新于:2024年7月19日

3K+ 次浏览

启动你的职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.