如何有效地使用常量值在Java中初始化数组

kon*_*ych 4 java arrays initialization

有没有办法将整数数组(或可能是任何数组)初始化为除零(或null)以外的常量值,这是默认值,没有for循环?

理想情况下,我在matlab中寻找像"ones"这样的功能,它不仅更整洁,而且效率更高.

biz*_*lop 8

Arrays.fill()是你想要的方法.(虽然在内部它仍然使用for循环,所以不同System.arrayCopy(),它不会更快.)

Ps:Arrays和它的基于集合的对应物一般Collections是两个非常有用的类.

  • java中的许多低级例程.软件包由JIT内在化,因此您在JDK源中看到的"引用"实现可能永远不会被执行.您可以查看内在函数列表[这里](http://hg.openjdk.java.net/jdk7u/jdk7u/hotspot/file/3facbb14e873/src/share/vm/classfile/vmSymbols.hpp)(查找*这里都是内在的*).它目前似乎不包括Arrays.fill,但确实包含了Arrays中的其他方法. (2认同)