Java 9에서 Oracle Corporation은 Stream 에 4가지 유용한 새 메서드를 추가했습니다. API . 이러한 메서드는 iterate()입니다. , ofNullable() , takeWhile() 및 dropWhile( ).
반복()
반복() 기존 for-loops의 스트림 버전 대체로 사용할 수 있습니다. . 이 방법은 다른 매개변수인 Predicate 를 추가하여 개선되었습니다. 술어 로 정의된 조건에 따라 이러한 끝없는 숫자를 중지할 수 있는 인터페이스 인터페이스.
예시
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이 아닌 경우 요소 . 그렇지 않으면 빈 을 반환합니다. 스트림.
예시
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()
takeWhile()에 전달된 매개변수 메소드는 술어 입니다. 상호 작용. 이 메서드는 스트림 개체의 요소를 왼쪽에서 오른쪽으로 가져옵니다. 술어 조건까지 개체가 더 이상 이행되지 않습니다.
예시
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()에 전달된 매개변수 메소드는 술어 이기도 합니다. 상호 작용. 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