2017-09-14 13 views
-2

をintに変換することはできません取得してください、私は次のエラーメッセージを取得しておいてください。がintは以下のコードでは、[]

intはここで[]

をintに変換することはできません、私の関数であります:

public static void populateTestScores(String[] names, int [][] scores) 
{  
    for(int j = 0; j < scores.length; j++) 
    { 
     out.println("Enter Test Scores " + (j + 1) + ": "); 
     scores[j] = user.nextInt(); 
    } 
} 

これを修正するにはどうすればよいですか?

+2

は、スタックオーバーフローへようこそ - あなたを持っていいです。 [良い質問をするにはどうすればいいですか?](https://stackoverflow.com/help/how-to-ask)と[最小限の完全かつ検証可能なサンプルを作成する方法](https:// stackoverflow。 com/help/mcve)を使用して、Stack Overflowsのコンテンツを可能な限り高いレベルに保ち、適切な答えを得る機会を増やします。 – Axel

+0

あなたの実際の問題は何ですか? – Axel

+0

それで、あなたはエラーメッセージについて何を理解していませんか? Javaは強く型付けされた言語なので、 'int'変数に' int'値を代入することはできません。 – azurefrog

答えて

1

scoresは、配列の配列(または好きな場合は行列)です。

scoresをループで使用してforループを繰り返すときは、値をscoresから取得するたびに何が得られますか?あなたがリストのリストを持っていれば、それについて考えてみましょう - それの中のそれぞれのものはリストでしょうか?

あなたのコードが書かれているとして、あなたは修正するために1つのまたは2つ以上の単語を変更する必要があります - ここではいくつかの可能性があります:

  1. scoresは、実際の整数のリストだけである - この場合には、それが定義されています間違った
  2. scoresが正しく定義されている - あなたはそれ
0

あなたは2次元配列に整数(user.nextInt())を割り当てるしようとしている中で、各セルにアクセスする場合は、この場合、あなたは、ネストされたループを必要としますすなわちアレイである。これはできません。

あなたがそうint[] scoresような配列次元のユニ、またはそう(おおよそ)のような配列にint型のシリーズを取得するためのループを作るために必要にscoresを変換する必要が次のいずれかの

Scanner s = new Scanner(System.in); 
List<Integer> ints = new ArrayList<>(); 
while (s.hasNextInt()) { 
    ints.add(s.nextInt()); 
    System.out.print("another int ? "); 
} 
scores[j] = ints.toArray(); 
関連する問題