java使用lambda表達式對List集合進行操作(JDK1.8)


  1. import java.util.ArrayList;
  2.  
    import java.util.List;
  3.  
    import java.util.function.Predicate;
  4.  
    import java.util.stream.Collectors;
  5.  
     
  6.  
     
  7.  
    public class LambdaStudy
  8.  
    {
  9.  
    public static void main(String[] args) {
  10.  
     
  11.  
    //初始化list集合
  12.  
    List<String> list = new ArrayList<String>();
  13.  
    list.add( "測試數據1");
  14.  
    list.add( "測試數據2");
  15.  
    list.add( "測試數據3");
  16.  
    list.add( "測試數據12");
  17.  
     
  18.  
    //使用λ表達式遍歷集合
  19.  
    list.forEach(s -> System.out.println(s));
  20.  
     
  21.  
    //結合Predicate使用和過濾條件篩選元素
  22.  
    Predicate<String> contain1 = n -> n.contains( "1");
  23.  
    Predicate<String> contain2 = n -> n.contains( "2");
  24.  
     
  25.  
    //根據條件遍歷集合
  26.  
    list.stream().filter(contain1).forEach(n -> System.out.println(n));
  27.  
    list.stream().filter(s -> contain1.test(s)).forEach(s -> System.out.println(s));
  28.  
    list.stream().filter(contain1.and(contain2)).forEach(n -> System.out.println(n));
  29.  
    list.stream().filter(contain1.or(contain2)).forEach(n -> System.out.println(n));
  30.  
     
  31.  
    //將過濾后的元素重新放到一個集合中
  32.  
    List<String> newList = list.stream().filter(contain1.and(contain2)).collect(Collectors.toList());
  33.  
     
  34.  
    newList.forEach(s -> System.out.println(s));
  35.  
     
  36.  
    }
  37.  
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM