![](/img/trans.png)
[英]Unable to stop a while loop in a Thread by changing it's boolean condition
[英]Unable to create while/boolean loop
我对Java不熟悉。 我试图创建一个while循环,将在每个过程之后提示用户; 关于他们是否希望继续。 我的进度看起来像这样。
String proString,answer;
char t,f,x;
boolean exitTime;
exitTime = false;
proString = " Would You Like To Continue? \n";
while(!exitTime) {
continue;
}
answer = JOptionPane.showInputDialog(null," Would You Like To Continue? T/F ",HEADING,JOptionPane.INFORMATION_MESSAGE);
x = char.parseChar(answer);
我也尝试了以下方法,但无济于事...
Prompt= JOptonPane.showInputDialog(null,proString,HEADING,JOptionPane.QUESTION_MESSAGE);
input = char.parseChar(Prompt);
if(input == "y") {
break;
}
else if(input == "n") {
}
input = char.parseChar(Prompt);
if(input != "y"||"n") {
JOptionPane.showMessageDialog(null,"Invalid Input", "Error", JOptionPane.INFORMATION_MESSAGE);
}
else {
}
我想我的问题归结为我应该使用JOptionPane.showInputDialog(...)还是JOptionPane.showConfirmDialog(...)或其他方法? 请告诉我您将如何做。
您需要使用do-while循环:
//assume user does not want to continue.
boolean continue = false;
do
{
//process whatever you want
//ask the user
Prompt= JOptonPane.showInputDialog(null,proString,HEADING,JOptionPane.QUESTION_MESSAGE);
input = char.parseChar(Prompt);
//wait until you get a valid input
while(input != "y"||"n")
{
JOptionPane.showMessageDialog(null,"Invalid Input", "Error",JOptionPane.INFORMATION_MESSAGE);
Prompt= JOptonPane.showInputDialog(null,proString,HEADING,JOptionPane.QUESTION_MESSAGE);
input = char.parseChar(Prompt);
}
//if user wants to continue, change your flag to true
if(input == "y") {
continue = true;
}
//otherwise make it false
else if(input == "n") {
continue = false;
}
while(continue); //if continue is true loop back
我没有测试过,但是它应该向您解释逻辑。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.