我想用java重复一个语句
我想问一个关于床罩的问题,虽然答案不是我选择的,但我希望它能让用户再次回答 导入java.util.Scanner我想用java重复一个语句,java,Java,我想问一个关于床罩的问题,虽然答案不是我选择的,但我希望它能让用户再次回答 导入java.util.Scanner public static void main(String[] args) { String newBedType ; Scanner sc1 = new Scanner(System.in) ; System.out.println("you want a single bed or doublebed? ") ; newBedType = sc
public static void main(String[] args) {
String newBedType ;
Scanner sc1 = new Scanner(System.in) ;
System.out.println("you want a single bed or doublebed? ") ;
newBedType = sc1.next() ;
while (newBedType != "single" + "doublebed") {
System.out.println("please choose againe the bed size: ");
newBedType = sc1.next() ;
switch (newBedType) {
case "single" : System.out.println("i see you like sleeping alone");
break ;
case "doublebed" : System.out.println("got company ;) ");
break ;
}
}
}
}
代码有点工作,它显示了如果我写正确的字符串的情况,但它将继续问我永远
我刚开始学习java,所以对我来说很简单,我知道这是一个愚蠢的问题,但经过几个小时的尝试和搜索(虽然我在python中找到了,但不知道如何将其“翻译”为java)
我想不出来。。。感谢所有愿意提供帮助的人:)您的问题在于:
while (newBedType != "single" + "doublebed")
while (!newBedType.equals("single") && !newBedType.equals("doublebed"))
这和你想象的不一样。将变量newBedType与字符串“singledoublebed”进行比较时,加法运算符将这两个字符串连接起来。你要排队吗
while (newBedType != "single" + "doublebed")
while (!newBedType.equals("single") && !newBedType.equals("doublebed"))
请注意.equals()方法的使用,因为Java中的字符串比较在==或!=运算符。如果他标记while循环并重新使用开关中的比较以断开该标签,则这甚至是不必要的。