Java程序将偶数和奇数元素拆分为两个不同的列表

要将偶数和奇数元素拆分为两个不同的列表,Java代码如下:

示例

import java.util.Scanner;
public class Demo{
   public static void main(String[] args){
      int n, j = 0, k = 0;
      Scanner s = new Scanner(System.in);
      System.out.println("输入所需的元素数 :");
      n = s.nextInt();
      int my_arr[] = new int[n];
      int odd_vals[] = new int[n];
      int even_vals[] = new int[n];
      System.out.println("输入数组的元素(偶数和奇数) :");
      for(int i = 0; i < n; i++){
         my_arr[i] = s.nextInt();
      }
      for(int i = 0; i < n; i++){
         if(my_arr[i] % 2 != 0){
            odd_vals[j] = my_arr[i];
            j++;
         } else {
            even_vals[k] = my_arr[i];
            k++;
         }
      }
      System.out.print("数组中的奇数 : ");
      if(j > 1){
         for(int i = 0;i < (j-1); i++){
            if(odd_vals[i]==1){
               System.out.println("1既不是偶数也不是奇数");
            }
            else
            System.out.print(odd_vals[i]+",");
         }
         System.out.print(odd_vals[j-1]);
      } else {
         System.out.println("没有奇数。");
      }
      System.out.println("");
      System.out.print("The even numbers in the array : ");
      if(k > 1){
         for(int i = 0; i < (k-1); i++){
            if(even_vals[i]==1){
               System.out.println("1既不是偶数也不是奇数");
            }
            else
            System.out.print(even_vals[i]+",");
         }
         System.out.print(even_vals[k-1]);
      } else {
         System.out.println("数组中没有偶数。");
      }
   }
}

输出结果

输入所需的元素数 :
输入数组的元素(偶数和奇数) :
数组中的奇数 : 1既不是偶数也不是奇数
9
数组中的偶数 : 2,4,6

控制台输入

5
1 2 4 6 9

一个名为Demo的类包含一个主函数,该函数请求数组中应该存储的元素数量,并声明两个新数组,分别存储奇数和偶数。数组元素从用户那里获取,然后运行for循环来检查这个数字是否能被2整除。检查数除以2的余数是否为0。如果是,那么数组中的数字将存储在偶数数组中,否则将存储在奇数数组中。由于1既不是偶数也不是奇数,所以它在打印输出时,直接输出“1存储在偶数或奇数数组”。