Java 8에서 Stream API의 iterate() 메서드는 seed 및 단항 연산자를 매개변수로 허용합니다. 스트림이 무한해지기 때문에 개발자는 Limit, findFirst 및 findAny와 같은 메서드를 사용하여 명시적 종료 조건을 추가해야 합니다. Java 9에서 Stream API의 iterate() 메서드는 스트림 중단 조건을 지정하는 데 사용되는 predicate라는 새 매개 변수를 추가합니다.
<strong>static <T> Stream<T> iterate(T seed, Predicate<? super T><!--? super T--> hasNext, UnaryOperator<T> next)</strong>
import java.util.stream.Collectors; import java.util.stream.Stream; import java.util.List; public class StreamIterateMethodTest { public static void main(String args[]) { List<Integer> numbers1 = Stream.<strong>iterate</strong>(1, i -> i+1) <strong> // with two arguments</strong> .<strong>limit</strong>(10) .<strong>collect</strong>(Collectors.toList()); System.out.println("In Java 8:" + numbers1); <strong>List<Integer></strong> numbers2 = Stream.<strong>iterate</strong>(1, i -> i <= 10, i -> i+1) <strong>// with three arguments</strong> <strong>.collect</strong>(Collectors.toList()); System.out.println("In Java 9:" + numbers2); } }
<strong>In Java 8:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] In Java 9:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]</strong>입니다.
위 내용은 Java 9에서 Stream API의 iterate() 메소드의 중요성은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!