
java数组拆分
问题:
如何将一个数组(例如:[85, -86, 13, 2, 99, 99, 99, 99, 98, 98, 99, 99, 99, 99, 20, 85, -86, 13, 2, 99, 99, 99, 99, 99, 99, 99, 85, 12, 85, -86, 13, 2, 99]))按照某个特定元素(例如:85)拆分为多个新数组?
答案:
立即学习“Java免费学习笔记(深入)”;
可以使用如下方法将数组拆分为新数组:
public static void arrfun(int[] arr, int splitvalue) {
list> list = new arraylist<>();
list temp = new arraylist<>();
for (int i = 0; i < arr.length; i++) {
if (arr[i] == splitvalue) {
if (!temp.isempty()) {
list.add(new arraylist<>(temp));
temp.clear();
}
temp.add(arr[i]);
} else {
temp.add(arr[i]);
}
}
list.add(temp);
system.out.println("拆分后的数组:");
for (list item : list) {
system.out.println(arrays.tostring(item.toarray()));
}
}
示例:
int[] arr = {85, -86, 13, 2, 99, 99, 99, 99, 98, 98, 99, 99, 99, 99, 20, 85, -86, 13, 2, 99, 99, 99, 99, 99, 99, 99, 85, 12, 85, -86, 13, 2, 99};
arrfun(arr, 85);输出:
拆分后的数组: [85, -86, 13, 2, 99, 99, 99, 99, 98, 98, 99, 99, 99, 99, 20] [85, -86, 13, 2, 99, 99, 99, 99, 99, 99, 99] [85, 12] [85, -86, 13, 2, 99]










