[英]Break DO While Loop Java?
我是JAVA的新手,我不知道如何打破我在下面的代码中使用的DO WHILE循环? 我以为我可以输入-1来打破或所有其他数字继续循环。
import javax.swing.*;
public class Triangel {
public static void main(String[] args) {
int control = 1;
while (control == 1){
String value = JOptionPane.showInputDialog("Enter a number or -1 to stop");
if(value == "-1"){
control = 0;
}
System.out.println(value);
}
}
}
您需要使用.equals()
而不是==
,如下所示:
if (value.equals("-1")){
control = 0;
}
当你使用==
你正在检查引用相等(即这是相同的指针),但是当你使用.equals()
你正在检查值是否相等(即它们是否指向同一个东西)。 通常.equals()
是正确的选择。
您也可以使用break
来退出循环,如下所示:
while( true ) {
String value = JOptionPane.showInputDialog( "Enter a number or -1 to stop" );
System.out.println( value );
if ( "-1".equals(value) ) {
break;
}
}
==
vs .equals()
更多信息,请参阅等于和==之间的差异 比较字符串时需要使用String.equals()
方法。 您的value == "-1"
代码正在检查引用相等,而不是值相等
你可以使用break
:
while (true) {
...
if ("-1".equals(value)) {
break;
}
...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.