Stream stream; List list=new LinkedList<>(); list.add(1);list.add(2);list.add(4); stream=list.stream(); System.out.println(addUp(stream)); System.out.println("---------1.1输出结束--------------"); //1.2返回字符串列表,包含艺术家的姓名和国籍 List nameAndOriginal; ArrayList nao=new ArrayList<>(); nao.add(new Artist("Holino",null,"Landon")); nao.add(new Artist("Luciba",null,"China")); nao.add(new Artist("Luciyi",null,"Australia")); nameAndOriginal=getNameAndOriginal(nao); for(String str:nameAndOriginal) System.out.println(str); System.out.println("---------1.2输出结束-----------------"); //1.3返回最多包含3首歌曲的专辑组成的列表 Set albums; ArrayList albumArrayList=new ArrayList<>(); for(int i=1;i<6;i++){ albumArrayList.add(new Album("qisi",getTracks(i),getArtists())); Set albumSet=getAlbums(albumArrayList); for(Album a:albumSet){ System.out.println("name is: "+a.getName()+"tracks`size is:"+a.getTracks().size()); System.out.println("---------1.3输出结束-----------------"); //1.1计算流中所有数字之和 private static int addUp(Stream numbers){ return numbers.reduce(0,(acc,elemeent)->(acc+elemeent)).intValue(); //1.2返回字符串列表,包含艺术家的姓名和国籍 private static List getNameAndOriginal(ArrayList list){ List res; res=list.stream() .map(artist -> "name is: "+artist.getName()+" and original is: "+artist.getOriginal()+" ,") .collect(Collectors.toList()); return res; //1.3返回最多包含3首歌曲的专辑组成的列表 private static Set getAlbums(ArrayList list){ Set res; res=list.stream() .filter(album -> album.getTracks().size()<=3) .collect(Collectors.toSet()); return res; //获取艺术家列表 private static ArrayList getArtists(){ ArrayList res=new ArrayList<>(); for(int i=0;i<5;i++){ ArrayList members=new ArrayList<>(); members.add("lili"); members.add("zhouqing"); res.add(new Artist("ladygaga",members,"europe")); return res; //获取歌曲列表 private static ArrayList getTracks(int count){ ArrayList tracks=new ArrayList<>(); for(int i=0;i artists=getArtists(); //输出artists System.out.println("---------以下为各个Artist中的成员个数----------"); for(Artist a:artists){ System.out.print(a.getMembers().size()+","); System.out.println(); System.out.println("---------下面为使用Lambda表达式求各个Artist中成员的总数--------"); int res=artists.stream().map(artist -> artist.getMembers().size()) .reduce(0,(acc,members)->(acc+members)) .intValue(); System.out.println(res); //获取艺术家列表 private static ArrayList getArtists(){ ArrayList res=new ArrayList<>(); for(int i=0;i<6;i++){ ArrayList members=new ArrayList<>(); for(int j=-1;j list=new ArrayList<>(); for(int i=1;i<10;i++){ StringBuilder sb=new StringBuilder(); for(int j=0;j<=i;j++){ sb.append("d"); list.add(sb.toString()); String max=list.stream().max(Comparator.comparing(s ->getCount(s) )).get(); System.out.println(max); * 获取字符串str中包含的小写字母个数 * @param str * @return private static long getCount(String str){ return str.chars().filter(c->c>=97 && c<=122).count(); //输出结果 dddddddddd Process finished with exit code 0