重复java中的字符串数组元素

时间:2017-10-06 17:21:24

标签: java arrays

我有一个包含4个元素的String数组。我想扩展这个String数组,重复相同的元素3或n次。

例如,对于数组

String[] array = {"a", "b", "c", "d"};

我想要像

这样的东西
String[] array = {"a", "b", "c", "d", "a", "b", "c", "d", "a", "b", "c", "d" };

我尝试了以下内容:

String[] columnHeaderNamesArray = {"A","b","c","d"};
String[] extendedColumnHeaderNamesArray = new String[columnHeaderNamesArray.length * 3];
            Arrays.fill(extendedColumnHeaderNamesArray, columnHeaderNamesArray);

但我得到了ArrayStoreException

1 个答案:

答案 0 :(得分:1)

您可以使用Collections.nCopies创建同一数组的多个副本,然后将它们平面映射到单个数组:

String[] multiplied =
    Collections.nCopies(4, array)
               .stream()
               .flatMap(Arrays::stream)
               .toArray(String[]::new);