@Testpublic void Predicate(){ List<String> objects = new ArrayList<>(); objects.add("张三丰"); objects.add("张一鸣"); objects.add("李白"); objects.add("李太白"); objects.add("李不易"); /* 方式 1: List<String> listA = new ArrayList<>(); //输出三个字的 李 姓名 for (String s : objects) { if (s.startsWith("李")){//存储以 李 开始的数据 listA.add(s); } } List<String> listB = new ArrayList<>(); for (String s:listA){ //筛选 长度为 3 的数据 if (s.length()==3){ listB.add(s); } } for (String s :listB){ System.out.println("s = " + s);//遍历输出 }*/ //方式 2 objects.stream() .filter(name ->name.startsWith("李")) .filter(name ->name.length() == 3) .forEach(name -> System.out.println("name = " + name));}