Java教程

Java ArrayList sort()

Java ArrayList sort()

在本教程中,我们将通过示例了解 Java ArrayList sort() 方法。
sort() 方法根据指定的顺序对数组列表中的元素进行排序。

示例

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    // create an ArrayList
    ArrayList<Integer> numbers = new ArrayList<>();
    numbers.add(7);
    numbers.add(3);
    numbers.add(9);
    numbers.add(-33);
    System.out.println("Unsorted ArrayList: " + numbers);
    // sort the ArrayList in ascending order
    numbers.sort(Comparator.naturalOrder()); 
    System.out.println("Sorted ArrayList: " + numbers);
  }
}
// Output: Unsorted ArrayList: [7, 3, 9,-33]
//         Sorted ArrayList: [-33, 3, 7, 9]

ArrayList sort()的语法

sort() 方法的语法是:
arraylist.sort(Comparator c)
这里, arraylistArrayList 类的对象。

sort() 参数

sort() 方法接受一个参数。
comparator-指定数组列表的排序顺序

sort() 返回值

sort() 方法不返回任何值。相反,它只会改变数组列表中元素的顺序。

示例 1: 按自然顺序对 ArrayList 进行排序

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    // create an ArrayList
    ArrayList<String> languages = new ArrayList<>();
    // add elements to ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Unsorted ArrayList: " + languages);
    // sort the ArrayList in ascending order
    languages.sort(Comparator.naturalOrder()); 
    System.out.println("Sorted ArrayList: " + languages);
  }
}
输出
Unsorted ArrayList: [Python, Swift, C, JavaScript]
Sorted ArrayList: [C, JavaScript, Python, Swift]
在上面的例子中,我们使用了 sort() 方法对命名语言的数组列表进行排序。注意这一行,
languages.sort(Comparator.naturalOrder());
这里是 naturalOrder() 方法>Java Comparator Interface 指定元素按自然顺序(即升序)排序。
Comparator 接口还提供了一种按降序对元素进行排序的方法。例如,

示例 2: 对 ArrayList 进行逆序排序

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    // create an ArrayList
    ArrayList<String> languages = new ArrayList<>();
    // add elements to ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Unsorted ArrayList: " + languages);
    // sort the ArrayList in ascending order
    languages.sort(Comparator.reverseOrder()); 
    System.out.println("Sorted ArrayList: " + languages);
  }
}
输出
Unsorted ArrayList: [Python, Swift, C, JavaScript]
Sorted ArrayList: [Swift, Python, JavaScript, C]
这里, Comparator 接口的 reverseOrder() 方法指定元素按逆序(即降序)排序。
注意: Collections.sort() 方法是对数组列表进行排序的更方便的方法。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4