Java 如何从数组中删除偶数

Java 如何从数组中删除偶数

在Java中,数组是一个对象。它是一种非原始数据类型,用于存储相似数据类型的值。

根据问题描述,我们需要删除数组中存在的偶数并打印奇数数组。

注意 - 数组必须是整数数组。

如果一个数字能够被2整除,则称其为偶数。

在本文中,您将看到如何使用Java编程语言从数组中删除偶数。让我们来探索一下。

以实例形式展示

实例-1

Suppose the original array is {2, 5, 16, 14, 31, 22, 19, 20}

进行操作后,即删除偶数后,更新的数组为:[5, 31, 19]

实例-2

Suppose the original array is {12, 15, 16, 14, 31, 22, 9, 21}

执行操作后,即移除偶数后,更新后的数组为:[15, 31, 9, 21]

实例-3

Suppose the original array is {12, 15, 16, 17}

进行操作后,即删除偶数后,更新的数组为:[15, 17]

步骤

  • 第1步 - 声明并初始化一个整数数组。

  • 第2步 - 声明一个for循环,并检查奇数元素。

  • 第3步 - 将奇数元素存储在一个新数组中。

  • 第4步 - 打印数组的元素。

语法

要获取数组的长度(即数组中的元素数),有一个数组的内置属性length。

以下是其语法 –

array.length

‘array’指的是数组引用。

多种方法

我们以不同的方法提供了解决方案。

  • 通过使用数组的静态初始化

  • 通过使用用户定义的方法

让我们逐个查看程序及其输出。

方法1:通过使用数组的静态初始化

示例

在这种方法中,数组元素将在程序中进行初始化。然后根据算法,在Java中删除数组中的偶数。

import java.util.*;
public class Main{

   //main method
   public static void main(String[] args){

      // variables
      int countOdd = 0;
      int odd[] = null;

      //declared and initialized an array
      int numbers[] = {12, 5 , 77, 14, 91, 21, 1, 50};

      // count odd numbers
      for (int i : numbers){
         if (!(i % 2 == 0))
         ++countOdd;
      }

      // create array to store odd numbers
      odd = new int[countOdd];

      // check each element and insert
      int i = 0;
      for (int num : numbers) {
         if (!(num % 2 == 0)) { 
            // odd
            odd[i++] = num;
         }
      }

      //print odd array
      System.out.println("Array after removing even numbers are: ");
      System.out.println(Arrays.toString(odd));
   }
}

输出

Array after removing even numbers are: 
[5, 77, 91, 21, 1]

方法2:使用用户自定义方法

示例

在这种方法中,数组元素将在程序中被初始化。然后通过将数组作为参数传递给用户自定义方法,并根据算法在Java中删除数组中的偶数。

import java.util.*;
public class Main{

   //main method
   public static void main(String[] args){

      //declared and initialized an array
      int numbers[] = { 44, 5 , 9, 15, 31, 22, 19, 48 };

      //calling the user defined method
      removeEven(numbers);    
   }

   //user defined method to remove even numbers 
   public static void removeEven(int []numbers){

      // variables
      int countOdd = 0;
      int odd[] = null;

      // count odd numbers
      for (int i : numbers){
         if (!(i % 2 == 0))
         ++countOdd;
      }

      // create array to store ood numbers
      odd = new int[countOdd];

      // check each element and insert
      int i = 0;
      for (int num : numbers) {
         if (!(num % 2 == 0)) { 
            // even
            odd[i++] = num;
         }
      }

      //print even array
      System.out.println("Array after removing even numbers are: ");
      System.out.println(Arrays.toString(odd));
   }
}

输出

Array after removing even numbers are: 
[5, 9, 15, 31, 19]

在这篇文章中,我们探讨了如何使用Java编程语言从数组中移除偶数。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程