在C/C++我们有memset()功能,可以实现我的愿望,但我Java如何能够将所有元素初始化为特定值?每当我们写入时int[] array=new int[10];,这只是初始化一个大小为10的数组,所有元素都等于零.我只想为我的一个数组更改这个初始化整数.即我想初始化一个所有元素都相等的数组-1.否则我必须for在初始化之后放置一个循环,其范围从索引0到索引size-1以及在循环内部,我正在分配元素-1.以下是更多理解的代码 -
int[] array = new int[10];
for (int i = 0; i < size; i++) {
array[i] = -1;
}
Run Code Online (Sandbox Code Playgroud)
我是否正确?还有其他方法吗?
Oli*_*rth 198
如果它是原始类型,您可以使用Arrays.fill():
Arrays.fill(array, -1);
Run Code Online (Sandbox Code Playgroud)
[ 顺便提一下,memset在C或C++中只有任何实际用途的数组char.]
Gil*_*anc 31
还有
int[] array = {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1};
Run Code Online (Sandbox Code Playgroud)
也可以使用 Java 8 流:
int[] a = IntStream.generate(() -> value).limit(count).toArray();
Run Code Online (Sandbox Code Playgroud)
然而,这可能不是完成这项工作的最有效方式。
| 归档时间: |
|
| 查看次数: |
214925 次 |
| 最近记录: |