Java While/do-While循环不';t端
据我所知,无论是C#还是Java,条件语句和循环语句中的逻辑都是相同的Java While/do-While循环不';t端,java,loops,Java,Loops,据我所知,无论是C#还是Java,条件语句和循环语句中的逻辑都是相同的 class WhileLoops { public static void main(String args[]){ Scanner input = new Scanner(System.in); String answer = ""; /*do{ System.out.println("Will you be my girlfriend?(Yes/No)"); answer = input.next
class WhileLoops {
public static void main(String args[]){
Scanner input = new Scanner(System.in);
String answer = "";
/*do{
System.out.println("Will you be my girlfriend?(Yes/No)");
answer = input.nextLine();
}while(answer != "Yes" && answer != "Yes");*/
while(answer != "Yes" && answer != "yes") {
System.out.println("Will you be my girlfriend?(Yes/No)");
answer = input.nextLine();
}
System.out.println("I promise to make you feel special.");
}
}
正如您在上面的代码中所看到的,我在编译和运行时使用了do while,并将其中任何一个设置为注释
这是我运行程序时发生的情况:
使用.equals()
方法。
所以
原因是Java在使用=
操作符时比较引用。比较这两个字符串时,它们指向内存中的不同位置,因此比较失败
equals()
(和equalsIgnoreCase()
)方法比较内存块的实际内容
注意:这仅适用于引用类型(如字符串和其他类)。值类型(如整数和浮点等)可以与常用的equals运算符进行比较。使用以下方法:
while(!answer.toLowerCase().equals("yes"))
你的代码会写出一个图像吗?请将您的示例输入和输出复制到您的问题中!这里不需要图像。很难加载吗?好的,下次会做得更好谢谢:)谢谢你的回答:)谢谢你非常具体和翔实的回答!高度赞赏:)
while(!answer.toLowerCase().equals("yes"))