In Java 9, Oracle Corporation has added four useful new methods to Stream API. Those methods are iterate(), ofNullable(), takeWhile() and dropWhile().
import java.util.stream.Stream;
public class StreamIterateMethodTest {
public static void main(String[] args) {
Stream.iterate(1, i -> i < 5, i -> i + 1).forEach(System.out::println); // iterate()
}
}输出
1
2
3
4
ofNullable()
ofNullable()方法在元素不为null时返回一个stream对象。否则,返回一个空的stream。
示例
import java.util.stream.Stream; public class StreamOfNullableMethodTest { public static void main(String[] args) { String str = "TutorialsPoint"; Stream.ofNullable(str).forEach(System.out::println); // ofNullable() method } }
输出
TutorialsPoint
takeWhile()
The parameter passed to a takeWhile() method is a Predicate interface. This method takes an element of stream object from left to right until the condition of the Predicate object is no longer fulfilled.
Example
import java.util.stream.Stream; public class StreamTakeWhileMethodTest { public static void main(String[] args) { Stream.of(1, 2, 3, 4, 5) .takeWhile(i -> i < 5) // takeWhile() method .forEach(System.out::println); } }
输出
1 2 3 4
dropWhile()
传递给 dropWhile() 方法的参数也是一个 Predicate 接口。它与 takeWhile() 方法相反。该方法从左到右依次传递流对象中的每个元素,并忽略满足条件的所有元素。一旦条件不再满足,它将返回所有剩余的元素。
示例
import java.util.stream.Stream; public class StreamDropWhileMethodTest { public static void main(String[] args) { Stream.of(3, 2, 1, 4, 6, 7, 8, 9, 10) .dropWhile(i -> i < 5) // dropWhile() method .forEach(System.out::println); } }
输出
6 7 8 9 10
以上就是Java 9中Stream API添加了哪些新功能?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。