2017-01-26 10 views
-2

.lengthを使って配列の長さを入力しようとしましたが、間違いました。 何が間違っていますか?配列の長さを入力する方法は?

import java.util.*; 
public class Storage { 
public static int i = 0, size; 
static int[] number; 

public static void main (String[] args) { 
    Scanner input = new Scanner(System.in); 
    System.out.println("What is the value of array?"); 
    number = new int [input.nextInt()]; 
    System.out.println("Write the numbers:"); 

    for (int i : number) { 
     number[i] = input.nextInt(); 
    } 
    System.out.println("Array:"); 
    System.out.println(Arrays.toString(number)); 
} 

} 

、出力は次のとおりです。

What is the value of array? 
3 
Write the numbers: 

1 
2 
3 
Array: 
[3, 0, 0] 
+2

'のため(私は= int型を0; i

+0

' lengh'や 'length'を試しましたか? – alayor

+0

両方、結果はありません – Nina

答えて

0

あなたは0番目index.Tryに、この入力したすべての値を格納してあなたは、インデックスをインクリメントされていません。

 for (int i = 0; i < number.length; i++) { 
     number[i] = input.nextInt(); 
    } 

    System.out.println("Array:"); 

    for (int j : number) { 
     System.out.println(j); 
    } 

出力:

What is the value of array? 
3 
Write the numbers: 
1 
2 
3 
Array: 
1 
2 
3 
0

foreachのは、コレクション上の値を読み取るために使用されます。

これを代わりに使用してください。

for(int k = 0;k<numbers.length;k++) 
{ 
    numbers[k] = input.nextInt(); 
} 
関連する問題