◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
java 提供多种数组分割方法:array.copyofrange 创建指定范围的新数组。arrays.split 根据分隔符元素分割数组。java 8 streams 可按条件分组分割数组。
Java 数组分割
问题:如何将一个 Java 数组分割为多个子数组?
回答:
Java 提供了多种方法来将数组分割为子数组。以下是最常用的方法:
立即学习“Java免费学习笔记(深入)”;
Array.copyOfRange(int[] array, int start, int end)
例如:
int[] arr = {1, 2, 3, 4, 5}; int[] subArr = Arrays.copyOfRange(arr, 2, 4); // [3, 4]
Arrays.split(int[] array, int delimiter)
例如:
int[] arr = {1, 2, 3, 4, 5, -1, 6, 7}; int[] subArrs = Arrays.split(arr, -1); // [[1, 2, 3, 4, 5], [6, 7]]
Java 8 Streams
例如:
int[] arr = {1, 2, 3, 4, 5}; List<int[]> subArrs = Arrays.stream(arr) .collect(Collectors.groupingBy(n -> n % 2 == 0 ? "Even" : "Odd")) .values() .stream() .map(list -> list.stream().mapToInt(n -> n).toArray()) .collect(Collectors.toList());
以上方法可根据实际需求来选择。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。