-1
public static void main(String[] args){
    int [] a=new int[256];
    System.out.println(a['t']);
}

スクリプトに['t']があります。これはどういう意味ですか。コードを実行しようとしました。a[' t ']にどんな文字を入力しても0 が返されるのはなぜですか?

4

7 に答える 7

3

Q: a['t'] にどんな文字を入れても 0 を返します

投稿したコードは、[] に何も入れていないことを示しています。すべての要素は、最初は「0」です。

これを試して:

public static void main(String[] args){
    int [] a=new int[256];
    a['t'] = 'T';
    System.out.println("a['t']: " + a['t']);
}

次のように表示されます。

a['t']: 84

于 2012-12-19T04:45:50.493 に答える
1

a['t']Javaはa[116]デフォルトで配列の内容をゼロに初期化するため、これはゼロです。

于 2012-12-19T04:52:28.310 に答える
1

これは、int 配列が値で初期化されていないためです。サイズ 256 で宣言されているため、暗黙的にデフォルト値 0 に初期化されます。

于 2012-12-19T04:47:16.970 に答える
1

あなたがしたことはこれと同等です:

public static void main(String[] args){
    int [] a=new int[256];
    System.out.println(a[116]);
}

't' のアスキー コードは 116 であるため、int の新しい配列の位置 116 にアクセスし、int のデフォルト値は 0 であるため、何かを割り当てない限り、この配列のすべての位置は 0 になります。違う。

于 2012-12-19T04:48:27.603 に答える
0
int [] a=new int[256]; 

上記のコードは整数の配列を作成します。つまり、明示的な値が割り当てられていない場合、整数は常に 0 で初期化されます。たとえば、a['T'] を呼び出すと、0 が返されます。

于 2012-12-19T04:45:51.050 に答える
0

「t」でint配列にアクセスする理由はわかりませんが、「t」を使用すると、実際には最初にintに変換されます。これは116(「t」のASCIIコード)である必要があり、次に[ 116]、そしてその配列を初期化しなかったため、その配列のすべての要素はデフォルトで0に設定されているはずなので、その結果が得られます。

于 2012-12-19T04:48:14.447 に答える
0

整数の配列のオブジェクトを作成すると、配列はデフォルトで 0 に初期化されます (値を割り当てない限り)。

于 2012-12-19T04:48:46.303 に答える