使用反轉比較器對字串流進行排序的 Java 程式


在本文中,我們將學習如何在 Java 中使用反轉比較器對字串流進行排序。Java 8 引入了 Stream API,它允許進行強大的操作,例如使用自定義比較器進行排序。

Java 比較器

一個比較器 是 Java 中的一個函式式介面,它定義了自定義的排序邏輯。它比較兩個物件,並根據比較結果返回一個結果。

Java 流

一個 是一個元素序列,可以並行或順序地處理,支援排序、過濾和對映等方法。

使用反轉比較器對字串流進行排序

以下是使用反轉比較器對字串流進行排序的步驟:

  • 步驟 1:建立字串列表 - 我們首先建立一個要排序的字串列表。
List<String> list = Arrays.asList("Tom", "Jack", "Ryan", "Kevin", "Loki", "Thor");
  • 步驟 2:定義用於比較的比較器 - 我們定義一個比較器,使用 compareTo() 方法 以字典順序比較字串。
Comparator<String> comp = (aName, bName) -> aName.compareTo(bName);
  • 步驟 3:使用帶有反轉比較器的流對列表進行排序 - 使用 stream() 方法,我們使用反轉比較器對列表進行排序並顯示結果。
list.stream().sorted(comp.reversed())

使用反轉比較器對字串流進行排序的 Java 程式

以下是使用反轉比較器對字串流進行排序的示例:

import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
public class Demo {
	public static void main(String[] args) {
		List<String> list = Arrays.asList("Tom", "Jack", "Ryan", "Kevin", "Loki", "Thor");
		System.out.println("Initial List = "+list);
		System.out.println("Reverse...");
		Comparator<String> comp = (aName, bName) -> aName.compareTo(bName);
		list.stream().sorted(comp.reversed()) .forEach(System.out::println);
	}
}

輸出

Initial List = [Tom, Jack, Ryan, Kevin, Loki, Thor]
Reverse...
Tom
Thor
Ryan
Loki
Kevin
Jack

更新於: 2024-11-23

305 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告