是否可以避免Java中的数组清零/初始化?
我需要快速分配固定长度的新字节数组,这些数组将完全填充预定义数据。因此,我不需要JVM在实例化时自动将数组归零,我当然不介意数组是否包含垃圾。我需要的是恒定时间数组分配,由于提到的归零问题,遗憾的是它变为O(n)。
会使用不安全的帮助吗?
答案 0 :(得分:1)
JVM始终初始化数组。但是你可以重复使用相同的数组,它将被初始化一次。
答案 1 :(得分:1)
班级sun.misc.Unsafe
正式无证。
来自http://mishadoff.com/blog/java-magic-part-4-sun-dot-misc-dot-unsafe/
避免初始化
当您需要跳过对象时,allocateInstance方法非常有用 初始化阶段或旁路安全检查在构造函数或您 想要该类的实例,但没有任何公共构造函数。
一些资源表明它已从Java 9中删除。
答案 2 :(得分:0)