| 
                         3.1 Predicate 实例 
- /** 
 -  * Predicate谓词测试,谓词其实就是一个判断的作用类似bool的作用 
 -  */ 
 -  @Test 
 -  public void test_Predicate() { 
 -  //① 使用Predicate接口实现方法,只有一个test方法,传入一个参数,返回一个bool值 
 -  Predicate<Integer> predicate = new Predicate<Integer>() { 
 -  @Override 
 -  public boolean test(Integer integer) { 
 -  if(integer > 5){ 
 -  return true; 
 -  } 
 -  return false; 
 -  } 
 -  }; 
 -  System.out.println(predicate.test(6)); 
 -  System.out.println("********************"); 
 -  //② 使用lambda表达式, 
 -  predicate = (t) -> t > 5; 
 -  System.out.println(predicate.test(1)); 
 -  System.out.println("********************"); 
 -  } 
 
  
输出结果 
 
3.2 实例分析 
① Predicate 接口分析 
- //① 使用Predicate接口实现方法,只有一个test方法,传入一个参数,返回一个bool值 
 -  Predicate<Integer> predicate = new Predicate<Integer>() { 
 -  @Override 
 -  public boolean test(Integer integer) { 
 -  if(integer > 5){ 
 -  return true; 
 -  } 
 -  return false; 
 -  } 
 -  }; 
 
  
这段代码中,创建了一个 Predicate 接口对象,其中,实现类 test 方法,需要传入一个参数,并且返回一个 bool 值,所以这个接口作用就是判断! 
- System.out.println(predicate.test(6)); 
 
  
再看,调用 test 方法,传入一个值,就会返回一个 bool 值。 
② 使用lambda表达式作为 predicate 
- //② 使用lambda表达式, 
 -  predicate = (t) -> t > 5; 
 -  System.out.println(predicate.test(1)); 
 -  System.out.println("********************"); 
 
  
lambda 表达式返回一个 Predicate 接口,然后调用 test 方法! 
3.3 Predicate 接口实例2 
- /** 
 -  * Predicate谓词测试,Predicate作为接口使用 
 -  */ 
 -  @Test 
 -  public void test_Predicate2() { 
 -  //① 将Predicate作为filter接口,Predicate起到一个判断的作用 
 -  Predicate<Integer> predicate = new Predicate<Integer>() { 
 -  @Override 
 -  public boolean test(Integer integer) { 
 -  if(integer > 5){ 
 -  return true; 
 -  } 
 -  return false; 
 -  } 
 -  }; 
 -  Stream<Integer> stream = Stream.of(1, 23, 3, 4, 5, 56, 6, 6); 
 -  List<Integer> list = stream.filter(predicate).collect(Collectors.toList()); 
 -  list.forEach(System.out::println); 
 -  System.out.println("********************"); 
 -  } 
 
  
输出结果 
                         (编辑:我爱故事小小网_铜陵站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |