目标
实现电脑或玩家连续两次win 则退出游戏
代码
private static int nPrint() {
Scanner input = new Scanner(System.in);
System.out.print("Enter your answer:(0 ->shitou 1->jiandao 2->bu):");
int a = input.nextInt();
return a;
}
private static void play() {
int totalNumber = 0;
while (true) {
int answer = nPrint();
int comAnswer = computer();
if (answer == comAnswer) {
System.out.println("xiangtong");
} else if (answer - comAnswer == -1 || answer - comAnswer == 2) {
System.out.println("your win!!");
if (totalNumber > 0)
totalNumber = 0;
totalNumber--;
} else {
System.out.println("your lost!!");
if (totalNumber < 0)
totalNumber = 0;
totalNumber++;
}
if (Math.abs(totalNumber) >= 2)
break;
}
}
private static int computer() {
// (0 ->shitou 1->jiandao 2->bu)
int comAnswer = (int) (Math.random() * 3);
return comAnswer;
}
直接在主函数中调用play()函数即可。
注意点
1.函数相互调用时,要注意搭配,特别是循环计数时,最好不要循环函数本身,而在函数中写循环。
2.当出现正确两次或多次即退出,或者和题上类似的 ,正确两次 或者 错误两次 注意是否将计数值归零。
3.当出现一个循环中 全部正确 才正确,或 全部错误才错误,我想要不计数 要不 用Boolean 和 且 并使用。