-6

配列初期化の参照変数を出力するとどうなりますか?

int[] it=new int[10];  
sop(it);  

結果は?

4

3 に答える 3

3
int[] it = new int[10];  
System.out.println(it);

itはオブジェクトであるため、渡されたオブジェクトを内部的に呼び出すprintln(Object)of PrintStream( System.out) を呼び出しています。toString()配列はObjecttoString()に似ています:toString()

getClass().getName() + "@" + Integer.toHexString(hashCode());

したがって、出力は次のようになります。

[I@756a7c99

ここ[で、 は配列の深さを表し、 をI参照しintます。16 進数として756a7c99返される値です。hashCode()

Class.getName()JavaDocを読んでください。


配列を印刷するにはArrays.toString()、次のようなものを使用します。

int[] it = new int[10];
System.out.println(Arrays.toString(it));

出力:

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
于 2013-02-05T22:02:38.880 に答える
0

sopそれがであると仮定するとSystem.out.println、メソッドによって返された文字列の結果が表示されますtoString。この場合、クラスの名前 + "@" + ハッシュコードの 16 進数になります。

于 2013-02-05T21:59:28.453 に答える
0

何かのようなもの[I@30c221

これは、新しい配列のメモリ アドレスです。

    int[] it=new int[10];
    System.out.println(it);
于 2013-02-05T22:01:07.233 に答える