Stream是Java8中新增的接口,你可以利用它处理集合里的数据,虽然对于Stream的性能目前还是有不少的争议,但Stream语法的简便却是不可置疑的。
流的获取:
集合中可以产生顺序(sequential)Stream和并行(parallel)Stream,区别在于前者是单线程运行而后者是多线程运行,它们的获取方式分别为:
List<String> list=Arrays.asList("b","a","f","c","d","a");
list.stream(); //顺序流
list.parallelStream(); //并行流
外部迭代和内部迭代:
外部迭代即显式的进行迭代并对数据进行操作,for循环和iterator都是外部迭代
内部迭代即迭代在集合内部进行,我们只需要定义对元素进行的操作即可,在初次学习Lambda文章中的list.forEach()也是内部迭代。
比如我们要对上面的list集合求出有多少个”a”,