2016-07-18 4 views
0

おはようございます。私はJava試験の紹介を見直しています。インストラクターは質問を書いて、何か不足しているようです。Javaチャレンジが不明です。 2-d配列

を考えてみましょう:

int[][] mat = new int[3][4]; 
for (int row = 0; row < mat.length; row++) 
{ 
for(int col = 0; col < mat[0].length; col++) 
{ 
if (row < col) 
mat[row][col] = 1; 
else if (row == col) 
mat[row][col] = 2; 
else 
mat[row][col] = 3; 
} 
} 

コードセグメントが実行された後にマットの中身は何ですか?

回答の選択これに具体的な回答は必要ありませんので、特に指定する必要はありません。私はと思われるものをとする必要があります。私はIDEに接続し、System.out.print(マット)を追加するとちょっとした回答が得られます。

「[[I 139a55 @」インストラクターは3×4または4x3の配列のいずれかの整数を選択することを期待している間に

。整数が3を超えていません。

これについての照明は、forループと配列の関係を理解する上で非常に役立ちます。

+1

を使用しています

for (int i = 0; i < mat.length; ++i) System.out.println(Arrays.toString(mat[i])); 

にしようとするあなたをお勧めしたいです配列の要素をどのように出力するかは、前の質問(http://stackoverflow.com/questions/409784/whats-the-simplest-way-to-print-a-java-array)を参考にしてください。 – paisanco

+0

自分自身で見たい場合は、 'for(int i = 0; i Gendarme

答えて

0

Java配列型では、内容をきれいに印刷するためにtoString()メソッドを実装していません。あなたが見ているのは、JVMでの参照自体の表現ですが、あなたの目的には無意味です。

私はあなたの主な質問がある場合は(基本的には各要素に対してtoStringを呼び出すことによって)人間が読める形で配列を出力しますArrays.toString方法、

+0

[配列#deepToString](https://docs.oracle.com/javase/8/docs/api/)も参照してください。 java/util/Arrays.html#deepToString-java.lang.Object:A-)これはさらに使いやすく、改行を印刷しません。 – The111