Java语言怎么实现判断一个数组的奇数和偶数的个数哪个多,并且将奇数和偶数分别复制到2个不同的数组,这个又怎么实现呢
public class OddEvenCountAndCopy {
public static void main(String[] args) {
int[] originalArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int oddCount = 0;
int evenCount = 0;
// 首先计算奇数和偶数的个数
for (int num : originalArray) {
if (num % 2 == 0) {
evenCount++;
} else {
oddCount++;
}
}
// 创建奇数和偶数数组
int[] oddArray = new int[oddCount];
int[] evenArray = new int[evenCount];
int oddIndex = 0;
int evenIndex = 0;
// 复制奇数和偶数到各自的数组
for (int num : originalArray) {
if (num % 2 == 0) {
evenArray[evenIndex++] = num;
} else {
oddArray[oddIndex++] = num;
}
}
// 打印结果
System.out.println("奇数个数:" + oddCount);
System.out.println("偶数个数:" + evenCount);
System.out.print("奇数数组:");
for (int num : oddArray) {
System.out.print(num + " ");
}
System.out.print("\n偶数数组:");
for (int num : evenArray) {
System.out.print(num + " ");
}
}
}
【以下回答由 GPT 生成】
解决方案
对于给定数组,我们可以遍历每个元素,并通过判断元素的奇偶性来计算奇数和偶数的个数。我们可以使用两个计数器分别记录奇数和偶数的个数,然后通过比较这两个计数器的值来判断哪个更多。接下来,我们可以创建两个新的数组,分别用来存储奇数和偶数。我们可以再次遍历给定数组,并在遍历过程中将奇数和偶数分别复制到对应的数组中。
以下是具体的代码实现:
public class OddEvenCounter {
public static void main(String[] args) {
int[] givenArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int oddCount = 0;
int evenCount = 0;
// 计算奇偶数的个数
for (int i = 0; i < givenArray.length; i++) {
if (givenArray[i] % 2 == 0) {
evenCount++;
} else {
oddCount++;
}
}
int[] oddArray = new int[oddCount];
int[] evenArray = new int[evenCount];
int oddIndex = 0;
int evenIndex = 0;
// 复制奇数和偶数到对应的数组中
for (int i = 0; i < givenArray.length; i++) {
if (givenArray[i] % 2 == 0) {
evenArray[evenIndex] = givenArray[i];
evenIndex++;
} else {
oddArray[oddIndex] = givenArray[i];
oddIndex++;
}
}
// 输出结果
System.out.println("奇数个数:" + oddCount);
System.out.println("偶数个数:" + evenCount);
System.out.println("奇数数组:" + Arrays.toString(oddArray));
System.out.println("偶数数组:" + Arrays.toString(evenArray));
}
}
代码说明: 1. 首先,我们定义了一个给定数组 givenArray
; 2. 然后,我们创建了两个变量 oddCount
和 evenCount
来记录奇数和偶数的个数,初始值为0; 3. 接下来,我们使用一个循环遍历给定数组,并通过判断元素的奇偶性来递增对应的计数器变量; 4. 然后,我们使用得到的奇数和偶数个数来分别创建两个新的数组 oddArray
和 evenArray
; 5. 接着,我们定义两个变量 oddIndex
和 evenIndex
来记录当前遍历到的奇数和偶数的索引位置,初始值都为0; 6. 在另一个循环中,我们再次遍历给定数组,并通过判断元素的奇偶性将元素复制到对应的数组中,并同时增加对应的索引变量; 7. 最后,我们使用 Arrays.toString()
方法将奇数数组和偶数数组转换为字符串,并输出结果。
这样,我们就可以根据给定数组判断奇数和偶数的个数,并将其分别复制到两个不同的数组中。
【相关推荐】