寫給大忙人看的JavaSE8 閱讀筆記之二
阿新 • • 發佈:2019-02-04
import java.util.Arrays; import java.util.List; import java.util.function.Predicate; public class Java8Tester { public static void main(String args[]){ List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9); // Predicate<Integer> predicate = n -> true // n 是一個引數傳遞到 Predicate 介面的 test 方法 // n 如果存在則 test 方法返回 true System.out.println("輸出所有資料:"); // 傳遞引數 n eval(list, n->true); // Predicate<Integer> predicate1 = n -> n%2 == 0 // n 是一個引數傳遞到 Predicate 介面的 test 方法 // 如果 n%2 為 0 test 方法返回 true System.out.println("輸出所有偶數:"); eval(list, n-> n%2 == 0 ); // Predicate<Integer> predicate2 = n -> n > 3 // n 是一個引數傳遞到 Predicate 介面的 test 方法 // 如果 n 大於 3 test 方法返回 true System.out.println("輸出大於 3 的所有數字:"); eval(list, n-> n > 3 ); } public static void eval(List<Integer> list, Predicate<Integer> predicate) { for(Integer n: list) { if(predicate.test(n)) { System.out.println(n + " "); } } } }import java.util.Arrays; import java.util.List; import java.util.function.Predicate; public class Java8Tester { public static void main(String args[]){ List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9); // Predicate<Integer> predicate = n -> true // n 是一個引數傳遞到 Predicate 介面的 test 方法 // n 如果存在則 test 方法返回 true System.out.println("輸出所有資料:"); // 傳遞引數 n eval(list, n->true); // Predicate<Integer> predicate1 = n -> n%2 == 0 // n 是一個引數傳遞到 Predicate 介面的 test 方法 // 如果 n%2 為 0 test 方法返回 true System.out.println("輸出所有偶數:"); eval(list, n-> n%2 == 0 ); // Predicate<Integer> predicate2 = n -> n > 3 // n 是一個引數傳遞到 Predicate 介面的 test 方法 // 如果 n 大於 3 test 方法返回 true System.out.println("輸出大於 3 的所有數字:"); eval(list, n-> n > 3 ); } public static void eval(List<Integer> list, Predicate<Integer> predicate) { for(Integer n: list) { if(predicate.test(n)) { System.out.println(n + " "); } } } }