Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中,如何仅获取用户出生日期的月份和日期_Java_Eclipse_Datetime_User Input_Monthcalendar - Fatal编程技术网

在Java中,如何仅获取用户出生日期的月份和日期

在Java中,如何仅获取用户出生日期的月份和日期,java,eclipse,datetime,user-input,monthcalendar,Java,Eclipse,Datetime,User Input,Monthcalendar,我有一个要求,在用户生日那天给他们奖金。 我的方法是这样的,我想获取用户的出生日期,然后将其出生日期与当前系统日期进行比较,如果DOB.day和DOB.Month等于system.day和system.Month,则向用户奖励奖金。有人知道我如何用Java来处理这个问题吗 任何建议都会很有帮助,我是Java新手,但我认为这很有可能不?Java.time.MonthDay 如前所述,请使用MonthDay。它来自java.time,现代java日期和时间API,底部有链接。证明: Zone

我有一个要求,在用户生日那天给他们奖金。 我的方法是这样的,我想获取用户的出生日期,然后将其出生日期与当前系统日期进行比较,如果DOB.day和DOB.Month等于system.day和system.Month,则向用户奖励奖金。有人知道我如何用Java来处理这个问题吗

任何建议都会很有帮助,我是Java新手,但我认为这很有可能不?

Java.time.MonthDay 如前所述,请使用
MonthDay
。它来自java.time,现代java日期和时间API,底部有链接。证明:

    ZoneId zone = ZoneId.of("Europe/Simferopol");
    
    MonthDay today = MonthDay.now(zone);
    
    DateTimeFormatter dobFormatter = DateTimeFormatter.ofPattern("M/d");
    String userInput = "4/16";
    MonthDay dateOfBirth = MonthDay.parse(userInput, dobFormatter);
    
    if (dateOfBirth.equals(today)) {
        System.out.println("Happy birthday " + dateOfBirth);
    }
今日(四月十六日)的产量:

生日快乐——04-16

一个
MonthDay
,顾名思义,是一个月和一个月的一天,所以没有一年。这对生日、周年纪念日之类的日子都很好。
MonthDay
以ISO 8601格式打印,也可以使用相同或不同的格式化程序进行格式化。如果您的用户喜欢以不同的格式输入,例如
16-4
,请相应地更改格式模式字符串

请注意,2月29日(闰年)出生的用户不会经常获得奖金,这将被视为不公平,在某些司法管辖区可能是非法的。因此,您可能希望将这些作为特例处理。使用
if(dateOfBirth.equals(MonthDay.of(Month.二月二十九日))
。例如,在非闰年,您可能希望在2月的最后一天或3月的第一天发放奖金

链接
  • 解释如何使用java.time。
    • 在底部附近包括一个简短的
      MonthDay

这是否回答了您的问题?您可以使用MonthDay类:@MadyDaby No。该数量包括年份。这个OP只想比较月份和月份的哪一天,所以这个问题不起作用。