1. ホーム
  2. java

Javaで配列のデフォルト値を仮定することはできますか?例えば、int配列がすべてゼロに設定されていると仮定してください。

2023-08-18 22:32:18

質問

実際には、JVMが動作するすべてのマシンにおいて、Javaのすべてのint配列はゼロで埋め尽くされて始まると仮定してよいのでしょうか?

これはすべての型に当てはまりますか? char型ですか?

これはどこで公式に文書化されているのですか?

私の持っている教科書では、int型配列は0に設定されると書いてありますが、ただ"明確にするために、すべての値を0に設定するforループを書くようにとも書いています。

どのように解決するのですか?

Java言語仕様 は、そのような情報を探すのに適切な場所です。

配列の構成要素 は、配列である新しいオブジェクトが作成されるたびに作成され、デフォルト値 (§4.12.5) に初期化される無名の変数です。

デフォルト値そのものは セクション 4.12.5 .

  • タイプの場合 バイト の場合、デフォルト値は0、つまり (バイト)0 .
  • 型の場合 短い の場合、デフォルト値は0、つまり (ショート)0 .
  • タイプの場合 int の場合、デフォルト値はゼロ、つまり 0 .
  • タイプの場合 長い の場合、デフォルト値は0、つまり 0L .
  • タイプ用 フロート の場合、デフォルト値は正のゼロ、つまり 0.0f .
  • タイプの場合 ダブル の場合、デフォルト値は正のゼロ、つまり 0.0d .
  • タイプ用 char の場合、デフォルト値はヌル文字、つまり '\u0000' .
  • タイプの場合 ブール型 の場合、デフォルト値は false .
  • すべての参照タイプにおいて、デフォルト値は null .