在实践中,我可以假设Java中的所有int数组都将以零填充吗?对于运行JVM的所有机器?
这适用于所有类型吗?炭?布尔?枚举?
这在哪里正式记录?
我已经说过教科书将int数组设置为零,但他们也建议你应该编写一个for循环来将所有值设置为零只是"更清楚".
Nik*_*bak 136
Java语言规范是查找此类信息的正确位置:
数组组件是未命名的变量,只要创建了一个新的数组对象,就会创建并初始化为默认值(第4.12.5节)
默认值本身在4.12.5节中给出.
- 对于type 字节,默认值为零,即(byte)0的值.
- 对于short类型,默认值为零,即(short)0的值.
- 对于int类型,默认值为零,即0.
- 对于long类型,默认值为零,即0L.
- 对于float类型,默认值为正零,即0.0f.
- 对于double类型,默认值为正零,即0.0d.
- 对于char类型,默认值为空字符,即'\ u0000'.
- 对于boolean类型,默认值为false.
- 对于所有引用类型,默认值为null.
Eti*_*tel 17
是.Java中的原始类型始终为零初始化.引用也初始化为null.
它应该是Java语言规范§4.12.5变量的初始值.而不是§4.5.5
"对于类型字节,默认值为零,即(字节)0的值.
对于类型short,默认值为零,即(short)0的值.
对于int类型,默认值为零,即0.
对于long类型,默认值为零,即0L.
对于float类型,默认值为正零,即0.0f.
对于double类型,默认值为正零,即0.0d.
对于char类型,默认值为空字符,即'\ u0000'.
对于类型boolean,默认值为false.
对于所有引用类型(§4.3),默认值为空值."
| 归档时间: |
|
| 查看次数: |
66417 次 |
| 最近记录: |