Can we assume default array values in Java? for example, assume that an int array is set to all zeros?

前端 未结 4 822
死守一世寂寞
死守一世寂寞 2020-11-29 19:31

In practice can I assume that all int arrays in Java will start out filled with zeros? for all machines in which the JVM runs?

Is this true for all types? char? bool

4条回答
  •  攒了一身酷
    2020-11-29 20:20

    It should be Java Language Specification §4.12.5 Initial Values of Variables. instead of §4.5.5

    "For type byte, the default value is zero, that is, the value of (byte)0.
    For type short, the default value is zero, that is, the value of (short)0.
    For type int, the default value is zero, that is, 0.
    For type long, the default value is zero, that is, 0L.
    For type float, the default value is positive zero, that is, 0.0f.
    For type double, the default value is positive zero, that is, 0.0d.
    For type char, the default value is the null character, that is, '\u0000'.
    For type boolean, the default value is false.
    For all reference types (§4.3), the default value is null."

提交回复
热议问题