如何在Java中移除陣列中的奇數?


在Java中,陣列是一個物件。它是一種非原始資料型別,用於儲存相同資料型別的多個值。

根據題意,我們需要刪除或消除陣列中存在的奇數,並列印偶數陣列。

注意 − 陣列必須是整數陣列。

如果一個數不能被2整除,則稱其為奇數。

在這篇文章中,你將看到如何使用Java程式語言從陣列中移除奇數。讓我們開始探索。

一些示例

示例1

Suppose the original array is {2, 5, 7, 14, 31, 21, 19, 22}

執行操作後,也就是移除奇數後,更新後的陣列是:[2, 14, 22]

示例2

Suppose the original array is {44, 5, 9, 15, 31, 22, 12, 48}

執行操作後,也就是移除奇數後,更新後的陣列是:[44, 22, 12, 48]

示例3

Suppose the original array is {12, 5, 77, 14, 91, 21, 1, 50}

執行操作後,也就是移除奇數後,更新後的陣列是:[12, 14, 50]

演算法

  • 步驟1 − 宣告並初始化一個整數陣列。

  • 步驟2 − 宣告for迴圈並檢查偶數元素。

  • 步驟3 − 將偶數元素儲存到一個新陣列中。

  • 步驟4 − 列印陣列的元素。

語法

要獲取陣列的長度(陣列中元素的數量),陣列有一個內建屬性,即length

以下是它的語法:

array.length

其中,'array' 指的是陣列引用。

多種方法

我們提供了多種解決方案。

  • 使用靜態陣列初始化

  • 使用使用者自定義方法

讓我們逐一檢視程式及其輸出。

方法1:使用靜態陣列初始化

示例

在這種方法中,陣列元素將在程式中初始化。然後,根據演算法從Java陣列中移除奇數。這裡,我們使用for迴圈遍歷陣列。

import java.util.*;
public class Main{

   //main method
   public static void main(String[] args){
   
      // variables
      int countEven = 0;
      int even[] = null;
      
      //declared and initialized an array
      int numbers[] = {12, 5 , 77, 14, 91, 21, 1, 50};
      
      // count even numbers
      for (int i : numbers){
         if (i % 2 == 0)
         ++countEven;
      }

      // create array to store even numbers
      even = new int[countEven];
    
      // check each element and insert
      int i = 0;
      for (int num : numbers) {
         if (num % 2 == 0) { 
            // even
         even[i++] = num;
         }
      }
      
      //print even array
      System.out.println("Array after removing odd numbers are: ");
      System.out.println(Arrays.toString(even));
   }
}

輸出

Array after removing odd numbers are:
[12, 14, 50]

方法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
      removeOdd(numbers);    
   }
   
   //user defined method to remove odd numbers 
   public static void removeOdd(int []numbers){
   
      // variables
      int countEven = 0;
      int even[] = null;
      
      // count even numbers
      for (int i : numbers){
         if (i % 2 == 0)
         ++countEven;
      }
      
      // create array to store even numbers
      even = new int[countEven];
      
      // check each element and insert
      int i = 0;
      for (int num : numbers) {
         if (num % 2 == 0) {
         
            // even
            even[i++] = num;
         }
      }
      
      //print even array
      System.out.println("Array after removing odd numbers are: ");
       System.out.println(Arrays.toString(even));
   }
}

輸出

Array after removing odd numbers are:
[44, 22, 48]

在這篇文章中,我們探討了如何使用Java程式語言從陣列中移除奇數。

更新於:2023年1月5日

2K+ 次檢視

啟動你的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.