小编Moe*_*ani的帖子

使用流获取 Map 的最大值

我有一个名为 Test 的课程。这个类有一个名为 getNumber 的方法,它返回一个 int 值。

public class Test{
     .
     .
     .
     .
     public int getNumber(){
          return number;
     }
}
Run Code Online (Sandbox Code Playgroud)

我还有一个 HashMap ,它的键是 Long ,值是一个 Test 对象。

Map<Long, Test> map = new HashMap<Long, Test>(); 
Run Code Online (Sandbox Code Playgroud)

I want to print the key and also getNumber which has a maximum getNumber using a Stream Line code.

I can print the maximum Number via below lines

final Comparator<Test> comp = (p1, p2) -> Integer.compare(p1.getNumber(), p2.getNumber());

map.entrySet().stream().map(m -> m.getValue())
     .max(comp).ifPresent(d -> System.out.println(d.getNumber()));
Run Code Online (Sandbox Code Playgroud)

However my …

java-8 java-stream

5
推荐指数
1
解决办法
4445
查看次数

标签 统计

java-8 ×1

java-stream ×1