java8的stream系列教程之filter過濾集合的一些屬性


貼代碼


   
   
  
  
          
  1. List<Student> lists = new ArrayList<>();
  2. Student student = new Student();
  3. student.setName( "laoli");
  4. student.setNumber( 1);
  5. lists. add(student);
  6. Student student1 = new Student();
  7. student1.setName( "erzi");
  8. student1.setNumber( 2);
  9. lists. add(student1);
  10. Student student3 = new Student();
  11. student3.setName( "three");
  12. student3.setNumber( 1);
  13. lists. add(student3);
  14. List<Student> collect = lists.stream().filter(s -> s.getNumber()== 1&& !s.getName(). equals( "laoli")).collect(Collectors.toList());
  15. for (Student student2 : collect) {
  16. System. out.println(student2.getName());
  17. }

輸出結果

three
  
  
 
 
         

主要代碼:

List<Student> collect = lists.stream().filter(s -> s.getNumber()==1&& !s.getName().equals("laoli")).collect(Collectors.toList());
  
  
 
 
         

這個filter(s -> s.getNumber()==1&& !s.getName().equals("laoli")) 就是將你要過濾的對象取出來,設置過濾條件就好了。

這個設置條件的地方,就當成使用 if()時, 括號里面的內容。

附上student的類:


   
   
  
  
          
  1. public class Student{
  2. private String name;
  3. private Integer number;
  4. public void setName(String name) {
  5. this.name = name;
  6. }
  7. public String getName() {
  8. return name;
  9. }
  10. public Integer getNumber() {
  11. return number;
  12. }
  13. public void setNumber(Integer number) {
  14. this.number = number;
  15. }
  16. }

原文地址:https://blog.csdn.net/Mint6/article/details/84780487


免責聲明!

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



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