作者SickKid ( Dizzy)
看板java
标题[问题] 猜拳 按Q跳出
时间Sat Sep 4 11:25:20 2010
请教大家
剪刀 石头 布 按 R, P or S 开始 然後 按Q(大小写略过)跳出
但是按了Q or q 都跳不出 是不是do-while的条件错了啊~~~
do
{
System.out.print("Enter your play R, P, or S ( Q to quit ): ");
personPlay = scan.next().toUpperCase();
computerInt = generator.nextInt(3); //电脑随机出拳
if (personPlay.equalsIgnoreCase("R") || personPlay.equalsIgnoreCase("P") ||
personPlay.equalsIgnoreCase("S") )
{
// Translate computer's randomly generated play to string
switch(computerInt)
{
case 0:
computerPlay = "R";
break;
case 1:
computerPlay = "P";
break;
case 2:
computerPlay = "S";
break;
default:
computerPlay = "";
break;
}
//Print computer's play
System.out.println("Computer randomly chose " + computerPlay);
}
//See who won. Use nested ifs instead of &&.删了一段 不然可能违反版规唷
// if 你出什麽 ,电脑出什麽 你赢或电脑赢了
if (personPlay.equals(computerPlay)) {
System.out.println("It's a tie!");
}else if (personPlay.equals("R")){
if (computerPlay.equals("S")){
System.out.println("Rock crushes scissors. You win!!");
}else {
if(computerPlay.equals("R")){
}else System.out.println("Errors!!"); //不是出R,S or P 也不是Q 显示error11s
personPlay = " "; // personPlay归零(有必要吗?!!)
} while (personPlay.charAt(0) != 81 || personPlay.charAt(0) != 113 ); // when
personPlay is not equal to Q,
这里我本来想用
personaPlay.NotEqualsIgnoreCase("Q") 但没这个method!!
後来用这样 想说(bolean预设为false)
boolean personPlay.equalsIgnoreCase("Q")
结果也不成立…胡搞瞎搞一通
我想是不是 do-while的条件出了问题呢?
谢谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.31.31.43
※ 编辑: SickKid 来自: 211.31.31.43 (09/04 11:32)
1F:→ Sofya:(!personPlay.equalsIgnoreCase("Q")) 09/04 11:28
2F:→ SickKid:oh my 想起来了 感谢 09/04 11:33
3F:→ SickKid:不过按了Q还是跳不出 = = 09/04 11:41
4F:→ SickKid:唷唷 我解决了 谢谢大家 09/04 12:01