Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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_Arrays - Fatal编程技术网

Java 如何将方法中的值存储到数组中?

Java 如何将方法中的值存储到数组中?,java,arrays,Java,Arrays,我目前正在用java制作一个游戏,其中有7行。这些行中的每一行都有一个指定的分数,可以使用以下方法进行计算:calculatorowscore(int row)。此方法工作正常,但我遇到的问题是使用以下方法从所有行中查找计算最大分数:calculateMaxScore() 这是我目前拥有的代码: public static int calculateMaxScore() { for(int row=1; row<8; row++)

我目前正在用java制作一个游戏,其中有7行。这些行中的每一行都有一个指定的分数,可以使用以下方法进行计算:
calculatorowscore(int row)
。此方法工作正常,但我遇到的问题是使用以下方法从所有行中查找计算最大分数:
calculateMaxScore()

这是我目前拥有的代码:

public static int calculateMaxScore()
            {
               for(int row=1; row<8; row++)
               {
                 int rowscore = calculateRowScore(row);
               }

               return 0; 
            }
公共静态int-calculateMaxCore()
{
对于(int row=1;row请尝试以下操作:

public static int[] calculateRowScores() {
    int[] rowscores = new int[8];
    for(int row=1; row<8; row++) {
        rowscores[row] = calculateRowScore(row);
    }
    return rowscores; 
}

如果您只想直接计算最大分数,而不是将所有内容放入数组中:

public static int calculateMaxScore() {
    int rowscore = 0;
     for(int row=1; row<8; row++)
     {
        if (calculateRowScore(row) > rowscore) {
          rowscore = calculateRowScore(row);
        }
     }
     return rowscore; 
  }
公共静态int-calculateMaxCore(){
int rowscore=0;
for(int行=1;row行分数){
rowscore=计算器的Wscore(行);
}
}
返回rowscore;
}

你真的应该使用
rowscores.length
或者创建一个
幻数
@Oliver OP使用
8
,所以我也这么做了。在代码中没有幻数是一个很好的建议,但是这个建议不需要回答这个问题(并且给定的OP对于编程来说是新的,因为它会导致额外的混乱,所以不需要)。我已经找到了另一种解决方案,但这也很有效!谢谢:)
public static int calculateMaxScore() {
    int rowscore = 0;
     for(int row=1; row<8; row++)
     {
        if (calculateRowScore(row) > rowscore) {
          rowscore = calculateRowScore(row);
        }
     }
     return rowscore; 
  }