Java程式用於按不區分大小寫順序排序陣列


可以使用 陣列java.util.Arrays.sort() 方法 按不區分大小寫順序排序。同時還需要 java.text.Collator 類,因為 Collator.getInstance() 用於獲取所需區域設定的 Collator 物件。

問題陳述

編寫一個 Java 程式,以不區分大小寫的方式對字串陣列進行排序。如下所示程式演示了此操作:

輸入

The unsorted array is: [apple, mango, Banana, Melon, orange]

輸出

The sorted array in case-insensitive order is: [apple, Banana, mango, Melon, orange]

按不區分大小寫順序排序陣列的步驟

以下是按不區分大小寫順序排序陣列的步驟:

  • 建立一個包含混合大小寫值的字串陣列。
  • 輸出排序前的陣列。
  • 使用 Arrays.sort()Collator.getInstance() 以不區分大小寫的方式對陣列進行排序。
  • 列印排序後的陣列。

示例

import java.text.Collator;
import java.util.Arrays;
public class Demo {
   public static void main(String args[]) {
      String[] arr = new String[] {
         "apple",
         "mango",
         "Banana",
         "Melon",
         "orange"
      };
      System.out.print("The unsorted array is: ");
      System.out.println(Arrays.toString(arr));
      Arrays.sort(arr, Collator.getInstance());
      System.out.print("The sorted array in case-insensitive order is: ");
      System.out.println(Arrays.toString(arr));
   }
}

輸出

The unsorted array is: [apple, mango, Banana, Melon, orange]
The sorted array in case-insensitive order is: [apple, Banana, mango, Melon, orange]

程式碼解釋

首先,定義陣列 arr[] 並列印未排序的陣列。如下所示程式碼片段演示了此操作:

String[] arr = new String[] { "apple", "mango", "Banana", "Melon", "orange" };
System.out.print("The unsorted array is: ");
System.out.println(Arrays.toString(arr));

我們使用 Arrays.sort() 方法 以及 Collator.getInstance() 以不區分大小寫的方式對陣列進行排序,因此它會忽略字母的大小寫。最後,我們列印排序後的陣列以顯示結果。此方法確保字串在不考慮其大小寫的情況下始終一致地排序,這對於許多需要不區分大小寫排序的應用程式很有用。

Arrays.sort(arr, Collator.getInstance())
System.out.print("The sorted array in case-insensitive order is: ");
System.out.println(Arrays.toString(arr));

更新於: 2024年7月24日

2K+ 瀏覽量

開啟您的 職業生涯

完成課程獲得認證

立即開始
廣告