簡介
Lambda表達式是Java SE 8中一個重要的新特性。lambda表達式允許你通過表達式來代替功能接口。 lambda表達式就和方法一樣,它提供了一個正常的參數列表和一個使用這些參數的主體(body,可以是一個表達式或一個代碼塊)。
Lambda表達式還增強了集合庫。 Java SE 8添加了2個對集合數據進行批量操作的包: java.util.function 包以及 java.util.stream 包。 流(stream)就如同迭代器(iterator),但附加了許多額外的功能。 總的來說,lambda表達式和 stream 是自Java語言添加泛型(Generics)和注解(annotation)以來最大的變化。 在本文中,我們將從簡單到復雜的示例中見認識lambda表達式和stream的強悍。
環境準備
如果還沒有安裝Java 8,那么你應該先安裝才能使用lambda和stream(譯者建議在虛擬機中安裝,測試使用)。 像NetBeans 和IntelliJ IDEA 一類的工具和IDE就支持Java 8特性,包括lambda表達式,可重復的注解,緊湊的概要文件和其他特性。
Lambda表達式的語法
基本語法:
(parameters) -> expression
或
(parameters) ->{ statements; }
下面是Java lambda表達式的簡單例子:
// 2. 接收一個參數(數字類型),返回其2倍的值
x -> 2 * x
// 3. 接受2個參數(數字),并返回他們的差值
(x, y) -> x
主站蜘蛛池模板:
金寨县|
淄博市|
台中县|
通道|
承德县|
湛江市|
墨江|
阳原县|
阳春市|
姜堰市|
天柱县|
陆川县|
吉木萨尔县|
上杭县|
连城县|
鹤壁市|
连平县|
武陟县|
濉溪县|
汉沽区|
汝州市|
兴城市|
鄢陵县|
文山县|
闵行区|
谷城县|
大关县|
荆州市|
宿州市|
左权县|
襄城县|
隆化县|
化州市|
东乌珠穆沁旗|
广昌县|
阿克陶县|
宿州市|
沐川县|
钟山县|
安丘市|
新野县|