【问题标题】:using int instead of boolean in if statements [duplicate]在 if 语句中使用 int 而不是 boolean [重复]
【发布时间】:2017-12-30 17:38:21
【问题描述】:

我正在开发一个小程序,该程序使用 switch 语句通过扫描仪输入来识别星期几。

package Dummies;
import java.util.Scanner;
public class DaysOfTheWeek {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner keyboard = new Scanner(System.in);
        int day = keyboard.nextInt();
        switch(day) {
        case 1:
            if(day = 1) {
                System.out.println("Sunday");
            }
        }
    }

}

我希望程序根据用户输入的数字告诉我星期几,例如在美国,一周的第一天是星期日,所以如果用户输入“1”星期日将被打印。我希望每个案例的 switch 语句都包含一个 if 语句以获得详细的响应。我在这里遇到的问题是我无法在 if 语句中将 int 转换为布尔值,我想问是否有人知道我可以如何解决它。 我知道我的代码不完整。

感谢您的帮助。

【问题讨论】:

  • 您的switchif冗余。另外,==(一个= 是分配)。
  • if(day = 1) { - 这sets day 为 1。如果要比较,需要使用 == 而不是 =

标签: java if-statement int switch-statement boolean


【解决方案1】:

我将 day = 1 更改为 day == 1 解决了问题,感谢 cmets。

【讨论】:

  • 因为您在case 1: 中,所以您的if 声明将始终为真,您可以完全删除它。
猜你喜欢
  • 2015-11-09
  • 2013-03-08
  • 2016-12-08
  • 1970-01-01
  • 2013-05-21
  • 1970-01-01
  • 1970-01-01
  • 2012-08-03
  • 1970-01-01
相关资源
最近更新 更多