Java 是否创建具有相同值/对象的n个副本的数组?

Java 是否创建具有相同值/对象的n个副本的数组?,java,arrays,copy,Java,Arrays,Copy,我想创建一个大小为n的数组,在数组中的每个索引处使用相同的值。在Java中实现这一点的最佳方法是什么 例如,如果n为5,且值为布尔值false,则数组应为: = [false, false, false, false, false] 将用相同的值填充现有数组。原语和对象存在变体您可以尝试使用: boolean[] array = new boolean[5]; Arrays.fill(array, false); 手动数组填充的第二种方法: boolean[] array = new boo

我想创建一个大小为
n
的数组,在数组中的每个索引处使用相同的值。在Java中实现这一点的最佳方法是什么

例如,如果
n
为5,且值为布尔值
false
,则数组应为:

= [false, false, false, false, false]
将用相同的值填充现有数组。原语和
对象存在变体

您可以尝试使用:

boolean[] array = new boolean[5];
Arrays.fill(array, false);
手动数组填充的第二种方法:

boolean[] array = new boolean[] {false, false, false, false, false};

对于该特定示例,默认情况下,
boolean[]
将初始化为
[false,false,…]

如果要使用非默认值初始化数组,则需要循环或使用
数组。填充
可以为您进行循环。

就是您要寻找的。

试试这个

 Boolean [] data = new Boolean[20];
  Arrays.fill(data,new Boolean(false));

或者你可以用低级的方式来做。创建一个包含n个元素的数组,并遍历放置相同元素的所有元素

int[] array = new int[n];

for (int i = 0; i < n; i++)
{
    array[i] = 5;
}
int[]数组=新的int[n];
对于(int i=0;i
在这种情况下,没什么可做的。当然可以,但它解释了整个过程。如果op需要将值设置为
true
,他将知道如何操作。是否有一种单线性静态方法可以完成此工作,以便可以在构造函数链接中使用?+1对于所讨论的示例,这确实是最好的答案。有人能确认此方法相对于其他内置方法的效率吗?
Integer[] copies = Collections.nCopies(copiesCount, value)
                              .toArray(new Integer[copiesCount]);
int[] array = new int[n];

for (int i = 0; i < n; i++)
{
    array[i] = 5;
}