Java 我怎样贴标签
我不明白在代码中应该把标签“one”放在哪里(我需要跳过while无限循环)Java 我怎样贴标签,java,label,Java,Label,我不明白在代码中应该把标签“one”放在哪里(我需要跳过while无限循环) 有人能告诉我标签应该放在哪里吗?您可以使用do while循环 do{ x =JOptionPane.showInputDialog(null, "Insert a data"); y = y + Integer.parseInt(x); }while(!(x.equals("ok"))); //here is where i need to get using the label System.out.print
有人能告诉我标签应该放在哪里吗?您可以使用do while循环
do{
x =JOptionPane.showInputDialog(null, "Insert a data");
y = y + Integer.parseInt(x);
}while(!(x.equals("ok")));
//here is where i need to get using the label
System.out.println("I did break");
我想标签已经贴对地方了 根据报告: break语句终止带标签的语句;事实并非如此 将控制流传输到标签。控制流被传输 添加到紧跟在已标记(已终止)语句之后的语句 声明
在您的示例中,您甚至不需要标签,因为yourbreak语句将退出
while(true)
循环。通常在嵌套循环时使用标签。好的,我自己找到了答案:
错误在于,当尝试将int的值赋给y时,如果它得到一个字符串(“ok”),它将以错误终止。
所以我只需要在if序列之后移动这条线(并使用equals方法),它现在就可以工作了
one:
while (true) {
x = JOptionPane.showInputDialog(null, "Insert a data");
if (x.equals("ok")) {
break one;
}
y = y + Integer.parseInt(x);
}
//here is where i need to get using the label
System.out.println("I did break");
不相关的问题:不要使用
==
或比较字符串=代码>。请改用equals(…)
或equalsIgnoreCase(…)
方法。了解==
检查两个对象引用是否相同,这不是您感兴趣的。另一方面,方法检查两个字符串是否具有相同顺序的相同字符,这就是这里的问题。我也这么认为,但为什么它不起作用呢?程序到达断点时实际上会终止是的,你说得对,但我想了解如何使用标签。无论如何,谢谢你:)
one:
while (true) {
x = JOptionPane.showInputDialog(null, "Insert a data");
if (x.equals("ok")) {
break one;
}
y = y + Integer.parseInt(x);
}
//here is where i need to get using the label
System.out.println("I did break");