背景

  java9的一再推迟发布,似乎让我们恍然想起离发布java8已经过去了三年之久,java8应该算的上java语言在历代版本中变化最大的一个版本了,最大的新特性应该算得上是增加了lambda表达式,借助lambda表达式,我们可以编写出性能更好,可读性更强的代码,更重要的,它给我们带来了一种编程思想的改革,作为一个活跃了20多年的编程语言,java能够做到与时俱进,拥抱新变化,实属不易,虽然现在很多公司包括我所在的公司尚未把jdk升级到最新的版本,但关注并学习每一个版本带来的新变化,是每个java程序员都该做的事,因为正是这些变化代表了这门语言未来的发展方向.可以预想,几年以后lambda表达式必将在整个java开发领域完成普及和应用,因此现在,对我们来说,是时候把lambda表达式学起来了,废话就说这么多,下面就让我们了解一下lambda的强大.

入门

  从外部迭代到内部迭代

  拿一个简单的例子来说,如果我们需要遍历一个List集合,需要怎么做,一般是下边这样:

 List<String> lists=Arrays.asList("a","b","c","d");        for (String s:lists){
            System.out.println(s);
        }

  java8给我提供了Collection.forEach()方法,于是我们可以这样编程:

List<String> lists=Arrays.asList("a","b","c","d");
        lists.forEach(