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+ 浏览量

开启您的 职业生涯

完成课程获得认证

立即开始
广告

© . All rights reserved.