它是进入6月27日的一部分(为了使逻辑正确),但仍打印日期不正确(逻辑失败)。
我不明白为什么它仍然失败。
**Code:**
Scanner date = new Scanner(System.in);
Scanner month = new Scanner(System.in);
System.out.println("Enter date");
int dat = date.nextInt();
String mon= "june";
//String month="feb";
System.out.println("now enter month");
String mont= month.nextLine();
if (dat== 27 && mont==mon) {
System.out.println("yes thats the correct date");
}
else {
System.out.println("no thats not the correct date");
}
答案 0 :(得分:0)
您需要使用equals()
而不是==
来比较对象(包括字符串):
if (dat== 27 && mont.equals(mon)){
// ...
}
答案 1 :(得分:0)
问题出现在你的字符串比较中
String mont= month.nextLine();
if (dat== 27 && mont==mon){
mont==mon
检查mont
和mon
是否真的是同一个对象。使用mont.equals(mon)