1. ホーム

[解決済み】配列の全要素をゼロに初期化するためのショートカットは?

2022-03-27 16:53:29

質問

C/C++ をよくやってました。

int arr[10] = {0};

...配列の全要素を0に初期化します。

Javaで同様のショートカットはありますか?

ループを使わないようにしたいのですが、可能でしょうか?

int arr[] = new int[10];
for(int i = 0; i < arr.length; i++) {
    arr[i] = 0;
}

解決するには?

積分型の配列のデフォルト値である0を保証するのは 言語仕様 :

各クラス変数、インスタンス変数、配列コンポーネントの初期化には デフォルト値 が生成されたとき (15.9節、15.10節) [...] 型の場合 int の場合、デフォルト値はゼロ、つまり 0 .  

一次元配列を別の値で初期化したい場合は java.util.Arrays.fill() (もちろん、内部ではループを使用します)。