Java 8流获得具有最高属性值的最大值

时间:2019-05-10 10:32:12

标签: java java-8 mapreduce java-stream reduce

我有一组对象:

<plugin>
  <groupId>com.allogy.maven.wagon</groupId>
  <artifactId>maven-s3-wagon</artifactId>
  <version>1.1.0</version>
  <extensions>true</extensions>
  <dependencies>
    <dependency>
      <groupId>javax.xml.bind</groupId>
      <artifactId>jaxb-api</artifactId>
      <version>2.3.1</version>
    </dependency>
    <dependency>
      <groupId>org.glassfish.jaxb</groupId>
      <artifactId>jaxb-runtime</artifactId>
      <version>2.3.1</version>
    </dependency>
  </dependencies>
</plugin>

我需要返回集合中具有最高级别的A的实例,因此对于此示例集合:

class A {
    String code;
    int level;
}

它将返回:

[
    { code: "AAA", level: 4 },
    { code: "BBB", level: 4 },
    { code: "CCC", level: 3 },
    { code: "DDD", level: 2 },
]

我尝试使用max,但是只会返回具有最高级别的对象,但是集合中一个元素中的更多元素可以具有最高级别。

0 个答案:

没有答案