是否可以在 java 中打印基于 LocalDateTime 的特定字符串?

Is it possible to print a certain string base on LocalDateTime in java?

所以我使用 localdatetime 来获取当前时间。我希望它在早上打印 "Good night" ,如果晚上根据 localdatetime 打印 "Good night" 。我确实找到了 isBefore() 。我也确实找到了一些例子,但它是针对 date 的。我需要一些例子。如果我的问题不清楚,我很抱歉。

LocalDateTime localDate = LocalDateTime.now();
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMM YYYY , h:mm a");

您可以使用 localDate.getHour() 获取当前时间并使用时间打印问候语。检查下面的代码 -

private void printGrretingMessage()
{
    LocalDateTime currentDateTime = LocalDateTime.now();
    int hour = currentDateTime.getHour();

    if ( hour < 10 ) {
        System.out.println( "Good Morning" );
    } else if ( hour < 16 ) {
        System.out.println( "Good Afternoon" );
    } else if ( hour < 20 ) {
        System.out.println( "Good Evening" );
    } else {
        System.out.println( "Good Night" );
    }
}

我希望这对你有用。 :-)