Java 9에서 Oracle Corporation은 Stream API에 iterate(), ofNullable(), takeWhile() 및 dropWhile()이라는 네 가지 유용한 새 메소드를 추가했습니다. .
iterate()는 기존 for-loops의 스트림 버전 교체로 사용할 수 있습니다. 이 방법은 이러한 끝없는 작업을 중지할 수 있는 또 다른 매개변수인 Predicate 인터페이스를 추가하여 개선되었습니다. Predicate interface.
import java.util.stream.Stream; public class StreamIterateMethodTest { public static void main(String[] args) { Stream.<strong>iterate</strong>(1, i -> i < 5, i -> i + 1).<strong>forEach</strong>(System.out::println); <strong>// iterate()</strong> } }
<strong>1 2 3 4</strong>
ofNullable() 메소드로 정의된 조건에 따른 숫자 가 null이 아닌 경우 1을 반환합니다 스트림 객체 . 그렇지 않으면 빈 스트림이 반환됩니다.
import java.util.stream.Stream; public class StreamOfNullableMethodTest { public static void main(String[] args) { String str = "TutorialsPoint"; Stream.<strong>ofNullable</strong>(str).<strong>forEach</strong>(System.out::println); <strong> // ofNullable() method</strong> } }
<strong>TutorialsPoint </strong>
takeWhile() 메소드에 전달된 매개변수는 Predicate 인터페이스입니다. 이 메소드는 left에서 스트림 객체의 요소를 가져옵니다. right Predicate 객체의 조건이 더 이상 충족되지 않을 때까지입니다.
import java.util.stream.Stream; public class StreamTakeWhileMethodTest { public static void main(String[] args) { Stream.of(1, 2, 3, 4, 5) .<strong>takeWhile</strong>(i -> i < 5) <strong>// takeWhile() method</strong> .<strong>forEach</strong>(System.out::println); } }
<strong>1 2 3 4</strong>
dropWhile() 메소드에 전달된 매개변수도 술어 인터페이스. 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) .<strong>dropWhile</strong>(i -> i < 5) <strong>// dropWhile() method</strong> .<strong>forEach</strong>(System.out::println); } }
<strong>6 7 8 9 10</strong>
위 내용은 Java 9의 Stream API에 어떤 새로운 기능이 추가되었습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!