java - 从日期中取出星期几

标签 java localdate

我的程序有问题,我必须插入一个随机日期(dd/MM/yyyy),如果当天是星期五或星期六,它应该打印出“聚会时间到了”。我插入了星期五或星期六的日期,但它仍然打印出“你应该学习”。有人可以帮忙吗?

Scanner scanner = new Scanner(System.in);
    String input = scanner.nextLine();
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
    LocalDate date = LocalDate.parse(input, formatter);
    System.out.println(date.getDayOfWeek().name());

    if (date.getDayOfWeek().equals("FRIDAY")) {
        System.out.println("Time for party, because it is: " + date.getDayOfWeek());
    }
    else if (date.getDayOfWeek().equals("SATURDAY"))
        System.out.println("Time for party, because it is: " + date.getDayOfWeek());
    else {
        System.out.println("You should study! It is: " + date.getDayOfWeek());
    }

最佳答案

LocalDate.getDayOfWeek 返回 DayOfWeek 类型的枚举。但是您正在将字符串与枚举进行比较。

你必须这样做

date.getDayOfWeek() == DayOfWeek.FRIDAY

关于java - 从日期中取出星期几,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50774526/

相关文章:

java - 使用 Spring Web Flow 上传文件时出现奇怪的错误

java - KeyListener 不听

java - 球队和球员反对 Java 困难

java - 如何使用 DateFormat 和 LocalDate 包格式化 ISObasic 日期

java - 来自 YearMonth 的 LocalDate 和第 n 个 DayOfWeek

java - 初始作业没有接受任何资源;检查您的集群 UI 以确保工作人员已注册并拥有足够的资源

java - 使用组合键映射/访问实体

java - 将 java.util.Date 转换为 datastax 的 LocalDate

android - 最受支持的 Java 日期/时间类