◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
java数组拆分是指将一个数组分割为多个较小的数组,可以通过:使用arrays.copyofrange()方法按指定范围分割;使用system.arraycopy()方法依次拷贝数据;使用流式api按给定间隔分组后再转化为数组。
Java 数组拆分
拆分 Java 数组是指将一个数组分割成多个较小的数组。这在处理大型数组或需要按特定方式重新组织数据时非常有用。
拆分数组的方法:
使用 Arrays.copyOfRange() 方法:
立即学习“Java免费学习笔记(深入)”;
int[] originalArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 将原始数组拆分成大小为 3 的子数组 int[][] splitArrays = new int[originalArray.length / 3][3]; for (int i = 0; i < splitArrays.length; i++) { splitArrays[i] = Arrays.copyOfRange(originalArray, i * 3, i * 3 + 3); }
使用 System.arraycopy() 方法:
int[] originalArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 声明拆分后的子数组 int[][] splitArrays = new int[3][]; // 分别将原始数组拆分成大小为 3 的子数组 splitArrays[0] = new int[3]; System.arraycopy(originalArray, 0, splitArrays[0], 0, 3); splitArrays[1] = new int[3]; System.arraycopy(originalArray, 3, splitArrays[1], 0, 3); splitArrays[2] = new int[3]; System.arraycopy(originalArray, 6, splitArrays[2], 0, 3);
使用流式 API:
int[] originalArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 使用流式 API 分拆数组 List<int[]> splitArrays = IntStream.range(0, originalArray.length) .boxed() .collect(Collectors.groupingBy(i -> i / 3)) .values().stream() .map(l -> l.stream().mapToInt(i -> i).toArray()) .toList();
拆分数组的注意事项:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。