Java8新特性学习
Java8刚正式发布没几天,今天特地体验了一下,看了一下官方文档和牛人的点评,最让我印象深刻有两个:Lambda表达式和MetaSpace!
Lambda表达式
Lambda表达式可以说是千呼万唤始出来,不记得从什么时候开始,Java一直要加这个特性,直到今天终于实现了!Lambda表达式对大家来说想必不陌生,C#语言很早就支持Lambda表达式。Lambda表达式的优点就是十分简洁,原来5行代码现在一行可以实现,而且可读性强。下面是官方文档Lambda Quick Start的一个例子:
public class RunnableTest { /** * @param args */ public static void main(String[] args) { System.out.println("===RunnableTest==="); // Anonymous Runnable Runnable r1=new Runnable() { public void run() { System.out.println("hello world one!"); } }; //Lambda Runnable Runnable r2=() ->System.out.println("Hello world two!"); r1.run(); r2.run(); }可以看出,Lambda语法很简洁,可读性很强。Java这次加入Lambda表达式特性后,增加了一个新的包:java.util.function.这个包里定义了很多接口,通过这些接口,使用Lambda表达式,很容易开发出通用性很强的程序,具体的使用大家可以看看官方文档。
另外Java8也修改了很多原来的包,如collection、concurrent,为了能够让大家使用Lambda表达式,特别是collection集合类,添加了许多用于查找、过滤的方法,通过Lambda表达式和function包中的接口,可以迅速查找集合元素,并做一些业务逻辑等。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。