Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 爪哇-石头剪刀-如果错误,循环一个额外的时间,并计算获胜的次数_Java_Eclipse_Loops_If Statement - Fatal编程技术网

Java 爪哇-石头剪刀-如果错误,循环一个额外的时间,并计算获胜的次数

Java 爪哇-石头剪刀-如果错误,循环一个额外的时间,并计算获胜的次数,java,eclipse,loops,if-statement,Java,Eclipse,Loops,If Statement,我不得不做一个石头纸剪刀游戏,循环5次,如果你输入了一个无效的数字,会增加循环次数。如果错误的话,我无法让它循环足够多,每当我输入错误的变量时,它确实会循环更多的次数,但次数太多了,我只需要5次正确的次数。它也不会计算玩家和电脑的分数。无论每个对手有多少次答对,它只显示玩家赢:1和电脑赢:1。请帮忙!这是我的密码 import java.util.*; public class bmahipat_C5Lab1 { public static void main(String[] arg

我不得不做一个石头纸剪刀游戏,循环5次,如果你输入了一个无效的数字,会增加循环次数。如果错误的话,我无法让它循环足够多,每当我输入错误的变量时,它确实会循环更多的次数,但次数太多了,我只需要5次正确的次数。它也不会计算玩家和电脑的分数。无论每个对手有多少次答对,它只显示玩家赢:1和电脑赢:1。请帮忙!这是我的密码

import java.util.*;
public class bmahipat_C5Lab1 {

    public static void main(String[] args) {
        Scanner reader = new Scanner (System.in);
        int player = 0, computer = 0;
        int computerScore = 0, playerScore = 0;
        int loops = 0;

        int rock = 1;
        int paper = 2;
        int scissors = 3;

        for(int i=1; i<6;i++) {
            computer = (int) (Math.random() * 3) + 1;
            System.out.println("Enter 1 for Rock, 2 for Paper, 3 for Scissors");
            player = reader.nextInt();

            if (player > scissors) {
                System.out.println("Not a valid response");
                System.out.println("Enter 1 for Rock, 2 for Paper, 3 for Scissors");
                player = reader.nextInt();
                i = -1;
            }

            if (player == computer) {
                System.out.println("Tie");
            } else if (player == rock ) {
                if(computer == paper){
                    System.out.println ("Player picked Rock, Computer picked Paper, Computer wins");
                    computerScore = +1;
                } else if(computer == scissors) {
                    System.out.println ("Player picked Rock, Computer picked Scissors, Player wins");
                    playerScore = +1;
                }    
            } else if (player == paper) {
                if(computer == rock){
                    System.out.println ("Player picked Paper, Computer picked Rock , Player wins");
                    playerScore = +1;
                } else if(computer == scissors) {
                    System.out.println ("Player picked Paper, Computer picked Scissors, Computer wins");
                    computerScore = +1;
                }   
            } else if (player == scissors) {
                if(computer == rock) {
                    System.out.println ("Player picked Scissors, Computer picked Rock , Computer wins");
                    computerScore = +1;
                } else if(computer == paper) {
                    System.out.println ("Player picked Scissors, Computer picked Paper, Player wins");
                    playerScore = +1;
                }
            }
        }

        System.out.println("");
        System.out.println("Computer Wins " + computerScore);
        System.out.println("Player Wins " + playerScore);
    }
}

两者之间有很大的区别

computerScore =+ 1; // This is computerScore = (+1) So it will be always 1

同样的逻辑也适用于

  i = -1;

代码=+1与=1相同,很可能您的意思是+=1而不是看固定次数的游戏,也许您应该一直看,直到玩了固定次数的游戏?欢迎使用,请阅读
  i = -1;