Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何编写一个数组,使数组中的每个元素重复numRepeats次?_Java_Arrays - Fatal编程技术网

Java 如何编写一个数组,使数组中的每个元素重复numRepeats次?

Java 如何编写一个数组,使数组中的每个元素重复numRepeats次?,java,arrays,Java,Arrays,我正在处理一个数组,该数组返回一个新数组,每个元素重复numRepeats次 例如: repeatElements(new String[]{"hello", "world"}, 3) 应返回包含以下元素的新数组: [你好,你好,你好,世界,世界,世界] 这就是我目前得到的 public String[] repeatElements(String[] array, int numRepeats) { String[] copy = new String[array.length * n

我正在处理一个数组,该数组返回一个新数组,每个元素重复numRepeats次

例如:

repeatElements(new String[]{"hello", "world"}, 3)
应返回包含以下元素的新数组:

[你好,你好,你好,世界,世界,世界]

这就是我目前得到的

public String[] repeatElements(String[] array, int numRepeats)
{
   String[] copy = new String[array.length * numRepeats];  
   String[] shortName = array.split("\\s+");

   for(int i = 0; i< numRepeats; i++){
      Arrays.fill(copy, shortName[i]); 
   }

   return copy; 
}
在这种情况下,传统的for循环更易于阅读


这就是我为newArr:I*n+j生成索引的方式,因此它从0、1、2、3、4、5开始。您可以初始化复制数组,然后循环索引并填充它,如下所示:

for (int i = 0; i < array.length; i++){
    for (int j = 0; j < numRepeats; j++){
        copy[(i * numRepeats) + j] = array[i]
    }
}
为什么要编写字符串[]shortName=array.split\\s+;?这似乎与您列出的要求没有任何关系。有什么你没告诉我们的吗?
for (int i = 0; i < array.length; i++){
    for (int j = 0; j < numRepeats; j++){
        copy[(i * numRepeats) + j] = array[i]
    }
}