Java 中的 C# .Take()

0 c# java java-stream

我是一名 C# 开发人员,最近开始进入 Java 开发,在这里我有一个问题。Java 是否有任何内置方法可以用 C# 做同样的事情.Take()

C# 示例:

int diffNo = 1;
someNumber.OrderBy(x => x.someNumber).Take(diffNo).ToList();
Run Code Online (Sandbox Code Playgroud)

Java示例:

someNumber.stream().sorted(Comparator.comparing(Object::getSomeNumber)).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

所以现在对于Java部分我只能进行排序但不知道是否有方法可以用来替换 .Take()

Fed*_*oca 5

Stream■找一个limit方法中,用于截断流以高达你提供作为参数元素的数量。

所以,假设diffNo是一个数字,你可以这样称呼它

someNumber.stream()
          .sorted(Comparator.comparing(SomeClass::getSomeNumber))
          .limit(diffNo)
          .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)