溫馨提示×

如何在Java中使用sorted()函數(shù)排序

小樊
93
2024-08-27 12:16:13
欄目: 編程語言

在Java中,sorted()函數(shù)通常與Java 8引入的Stream API一起使用

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class SortingExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(5, 1, 3, 6, 2, 7, 8);

        // 使用sorted()函數(shù)對列表進(jìn)行排序
        List<Integer> sortedNumbers = numbers.stream()
                                            .sorted()
                                            .collect(Collectors.toList());

        System.out.println("原始列表: " + numbers);
        System.out.println("排序后的列表: " + sortedNumbers);
    }
}

在這個(gè)示例中,我們首先創(chuàng)建了一個(gè)包含整數(shù)的列表。然后,我們使用stream()函數(shù)將列表轉(zhuǎn)換為一個(gè)Stream對象。接下來,我們調(diào)用sorted()函數(shù)對Stream中的元素進(jìn)行排序。最后,我們使用collect()函數(shù)將排序后的元素收集到一個(gè)新的列表中。

運(yùn)行此代碼將輸出:

原始列表: [5, 1, 3, 6, 2, 7, 8]
排序后的列表: [1, 2, 3, 5, 6, 7, 8]

請注意,sorted()函數(shù)默認(rèn)按照自然順序?qū)υ剡M(jìn)行排序。如果你想根據(jù)自定義比較器對元素進(jìn)行排序,可以將比較器作為參數(shù)傳遞給sorted()函數(shù)。例如,要對整數(shù)列表進(jìn)行降序排序,可以這樣做:

List<Integer> sortedNumbers = numbers.stream()
                                    .sorted(Comparator.reverseOrder())
                                    .collect(Collectors.toList());

0