2016-04-10 14 views
0

私はJavaで配列を使って遊んでいて、この疑いがありました。 Javaで2D配列の寸法を見つけるにはどうすればよいですか?例えば、私はSystem.inからアレイの入力を取得し、このような別の方法でそれを渡す:アレイのJavaで2D配列の次元を見つける

Scanner in = new Scanner(System.in); 
int arr[][] = new int[6][6]; 
for(int i=0; i < 6; i++){ 
    for(int j=0; j < 6; j++){ 
       arr[i][j] = in.nextInt(); 
     } 
} 
findSize(arr); 
/* 
* 
*Other code 
* 
*/ 
findSize(int[] inputArr){ 
//I want to find the dimensions of the array here 
} 

両方の寸法が助けに感謝0よりも大きいです。

+1

'arr.length'は行数であり、各行は異なる数の列を持つことができます(' arr [0] .length'は最初の列の列数行)。最後に、 'findSize'は単一次元の配列をとります。 –

答えて

0

私はちょうどこのような配列の0番目の要素にアクセスする必要があります。

int size = inputArr[0].length; 

これはトリックを行うだろう!

+0

'inputArr'の各エントリは、ギザギザの配列に対して異なる長さを持つことができることに注意してください。 –

0

この方法:

findSize(int[] inputArr){ 
//I want to find the dimensions of the array here 
} 

2次元アレイ

パラメータとして取得している、従ってあなたが行う必要があります

findSize(int[][] inputArr){ 
    int heiht = inputArr.length; 
    int width = inputArr[0].length; 
} 
+0

長さを長くすることができます。長いJavaの事前定義のキーワードです – star2wars3

+0

はいあなたは正しいです...ありがとう!!!!!! –

+0

これは本当に便利な方法です!ありがとう! –

0

2次元配列は、配列の配列です。取得する

int size_1 = inputArr.length; 

:2次元配列の次元1を取得する

int[] findSize(int[][] inputArr) { 
    int[] size = new int[inputArr.length]; 

    for (int i = 0; i < inputArr.length; i++) { 
     size[i] = inputArr[i].length; 
    } 

    return size; 
} 

:(第一次元の各配列エントリのために異なっていてもよい)は、第2の寸法の実際の長さを得るためには、これを行います2次元配列次元2:

関連する問題