我正在尝试使用do while循环,如果用户回答是“你想继续”,它会终止吗?如果我在控制台中回答是,循环功能正常,但是,我想告诉用户输入是或否。因此,我搜索了有关如何将字符串值分配给boolean
值为true的信息,但我的代码无效。有人能告诉我正确的语法吗?
boolean wantsToContinue=String.equalsIgnoreCase("yes");
do{
rollOne=diceOne.roll();
rollTwo=diceTwo.roll();
rollTotal=rollOne+rollTwo;
//BoardSquare thePlayer.setLocation(square[]);
Scanner keyboard=new Scanner(System.in);
System.out.println("Do you want to continue:");
wantsToContinue = keyboard.nextBoolean();
} while (thePlayer.getBalance()>0 && wantsToContinue);
当我这样设置时,我得到的静态方法无法从静态上下文中引用。我需要避免为此逻辑使用单独的方法或对象。
答案 0 :(得分:0)
试试这个
String wantsToContinue="";
do{
rollOne=diceOne.roll();
rollTwo=diceTwo.roll();
rollTotal=rollOne+rollTwo;
//BoardSquare thePlayer.setLocation(square[]);
Scanner keyboard=new Scanner(System.in);
System.out.println("Do you want to continue:? yes | no");
wantsToContinue = keyboard.next();
} while (thePlayer.getBalance()>0 && wantsToContinue.equalsIgnoreCase("yes"));
在每次迭代提示中是或否。如果你给是,循环将继续(也基于你的getBalance返回> 0)。或者终止。 equalsIgnoreCase(“是”)检查选项是或是或其组合。如果相等则返回true。
答案 1 :(得分:0)
equalsIgnoreCase 未在String类中声明为静态方法,但您将其用作 String.equalsIgnoreCase 。因此,错误“非静态方法无法从静态上下文引用”