将数组中的所有奇数移到偶数前面。用基础的java程序编写
时间: 2024-12-14 12:18:20 浏览: 5
java代码-数组中两种数出现奇数次,其他数出现偶数次,找到这两个数
在Java中,你可以通过遍历数组并利用两个指针(一个指向当前元素,另一个指向下一个偶数位置)来实现这个功能。下面是一个简单的示例程序:
```java
public class Main {
public static void main(String[] args) {
int[] array = {4, 7, 2, 9, 6, 1, 8, 3, 5}; // 原始数组
moveOddToEven(array);
for (int num : array) {
System.out.print(num + " "); // 输出处理后的数组
}
}
public static void moveOddToEven(int[] arr) {
int oddIndex = 0; // 指向奇数的位置
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 != 0) { // 如果是奇数
// 先移动偶数到它们原来的位置
if (oddIndex < i) {
for (int j = i; j > oddIndex; j--) {
arr[j] = arr[j - 1];
}
}
// 然后将奇数放到偶数的位置
arr[oddIndex++] = arr[i]; // 奇数向右移动一位
}
}
}
}
```
在这个程序中,`moveOddToEven`函数接收一个整数数组作为输入,并通过循环检查每个元素是否为奇数。如果是,就先将偶数向前移动一个位置,然后把奇数插入到空出的位置。运行这个程序,原始数组中的奇数会出现在偶数之前。
阅读全文