簡體   English   中英

Java中的OrderByDecending(LINQ)等效項

[英]OrderByDecending(LINQ) equivalent in Java

嗨,我是一名Java開發人員。 問題很簡單:

我如何才能將以下c#代碼寫入Java並仍能正常工作:

myCoffeeList.OrderByDescending(x => x.Name?.ToLower()?.Trim() == sender.Text.ToLower()?.Trim()));

我的sender.Text是一個sender.Text ,其值類似於Cappuccino

上面的代碼做什么?

好吧,我有一組咖啡,我希望與sender.text完全匹配的咖啡名稱應該在頂部,其余的可以是從服務器返回的順序。

我已經檢查了以下內容:

  1. list.streams使用類似LINQ的東西

  2. 注釋類型OrderBy,但它與數據庫有關

List<Coffee> sorted = lst.stream()
                .sorted(Comparator.comparing(s -> !s.trim().equalsIgnoreCase(sender.trim())))
                .collect(Collectors.toList());

使用Comparable和sort方法:

List<String> coffee = new ArrayList<>();
coffee.add("C");
coffee.add("A");
coffee.add("B");
coffee.add("D");

String top = "D";
coffee.sort((a, b) -> a.equals(top) ? -1 : 0);
coffee.forEach(System.out::println);

編輯:自然訂單使用:

coffee.sort((a, b) -> a.equals(top) ? -1 : a.compareTo(b));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM