Dalam Java 8, kaedah iterate() bagi Stream API menerima seed dan unary operator sebagai parameter. Memandangkan strim menjadi tidak terhingga, pembangun perlu menambah syarat penamatan eksplisit menggunakan kaedah seperti had, findFirst dan findAny. Dalam Java 9, kaedah iterate() Stream API menambah parameter baharu, iaitu predicate, yang digunakan untuk menentukan syarat untuk mengganggu strim. Terjemahan bahasa Cina bagi
<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>
Atas ialah kandungan terperinci Apakah kepentingan kaedah iterate() Stream API dalam Java 9?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!