Java的语言的程序代码怎么实现将一个Array拆分成两个Array,并且根据循环单次和双刺分别对两个拆分的Array进行输出,每2个输出在1行中
效果如图, 看下是这个意思不 :
demo 代码如下:
public class ArraySplitter {
public static void main(String[] args) {
int[] originalArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
// 计算拆分后的数组长度
int splitLength = (int) Math.ceil(originalArray.length / 2.0);
// 创建两个拆分后的数组
int[] array1 = new int[splitLength];
int[] array2 = new int[splitLength];
// 拆分数组
for (int i = 0; i < originalArray.length; i++) {
if (i < splitLength) {
array1[i] = originalArray[i];
} else {
array2[i - splitLength] = originalArray[i];
}
}
// 循环单次输出第一个拆分的数组
for (int i = 0; i < array1.length; i++) {
System.out.print(array1[i] + " ");
if ((i + 1) % 2 == 0) {
System.out.println();
}
}
System.out.println();
// 循环双次输出第二个拆分的数组
for (int i = 0; i < array2.length; i++) {
System.out.print(array2[i] + " ");
if ((i + 1) % 2 == 0) {
System.out.println();
}
}
}
}
能具体说说嘛,举个例子。
先看截图:
参考如下:
public class Test {
public static void main(String[] args) {
int[] arr = {1,2,3,4,5,6,7,8,9,10,11,12};
int[] arr1 = new int[6];
int[] arr2 = new int[6];
int m = 0;
int n = 0;
for (int i = 0 ; i < arr.length; i++) {
if (i % 2 == 0) {
arr1[m++] = arr[i];
} else {
arr2[n++] = arr[i];
}
}
print(arr1, m);
print(arr2, n);
}
private static void print(int[] arr2, int len) {
for (int i = 0; i < len; i++) {
System.out.print(arr2[i] + " ");
if ((i + 1) % 2 == 0)
System.out.println();
}
}
}
不知道你这个问题是否已经解决, 如果还没有解决的话:Array 数组类型原子类,包括三种:AtomicIntegerArray、AtomicLongArray 和 AtomicReferenceArray。
AtomicIntegerArray、AtomicLongArray 和 AtomicReferenceArray 提供对 int、long、boolean 的数组元素的原子性操作。原子替换数组中的元素:求i个元素的偏移量,提高位移运算,提高性能。