2017-03-06 25 views
-2

プロジェクトで作業していますが、コンパイルしようとするとエラーが発生しました。エラー:互換性のない型int []をintに変換できません。エラーはそれが17行目であると言います。私は倍をするためにすべてを変えようとしました、そして、私はダブルスについて同じエラーを受け取ります。私はなぜ数字が保存できないのか分かりませんし、説明が非常に役立つでしょう。エラー:互換性のない型:int []をintに変換できません

int[][] houseNumbers; 
    int numberOfHouses, homeNumber, numberOfPeople, house, people; 
    System.out.print("How many houses in the street?: "); 
    numberOfHouses = keyboard.nextInt(); 
    houseNumbers = new int[numberOfHouses][]; 
    for (house = 0; house < houseNumbers.length; house++){ 
     System.out.print("What is the next house number? : "); 
     houseNumbers[house] = keyboard.nextInt(); 
     System.out.print("How many people live in house number" + houseNumbers[house] + ":"); 
     numberOfPeople = keyboard.nextInt(); 
     houseNumbers[house] = new int[numberOfPeople]; 
     for (people = 0; people < houseNumbers[house].length; people++){ 
      System.out.print("What is the age of person " + people + ": "); 
      houseNumbers[house][people] = keyboard.nextInt(); 
     } 
    } 
+0

'houseNumbers [家] = keyboard.nextInt();' 'int'アレイに' int'を割り当てます。 3行後に正しく実行します。おそらく 'numberOfPeople = keyboard.nextInt();'が必要です。 –

+0

だから私はした:homeNumber = keyboard.nextInt(); houseNumbers [house] = homeNumber;私はまだ同じエラーが発生しています – Mark

+0

int配列にintを代入すると何が問題になりますか? – Mark

答えて

0

あなたにはいくつかのエラーがあります。最大のものは、intint配列に割り当てることです。配列は(1つ以上の)項目のブロックです。個々の項目にアクセスするには、ブロックをnewで割り付ける必要があります。あなたのコンパイラはこれをあなたに伝えています。コンパイラのエラーと警告を理解する方法を学びます。

エラー1:

/* houseNumbers[house] -> */ homeNumber = keyboard.nextInt(); 

エラー2:

System.out.print("How many people live in house number" + /* houseNumbers[house] -> */ homeNumber + ":"); 
関連する問題