Java8中Stream流式处理案例
1.快速合并List集合中的元素
import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("CC"); list.add("BB"); list.add("DD"); String out = list.stream().collect(Collectors.joining(",")); System.out.println(out); } }
运行结果如下:
CC,BB,DD
2.转换List集合中的元素(使用Map映射)
import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("CC"); list.add("BB"); list.add("DD"); //映射操作:map String out = list.stream().map(s -> { return s + s; }).collect(Collectors.joining(",")); System.out.println(out); } }
运行结果如下:
CCCC,BBBB,DDDD
2.过滤List集合中的空元素(使用filter过滤)
import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class Test3 { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("CC"); list.add("BB"); list.add("DD"); list.add(null); //映射操作:map String out = list.stream().filter(s -> StringUtils.isNotBlank(s)).collect(Collectors.joining(",")); System.out.println(out); } }
运行结果如下:
CC,BB,DD