JDK8的Lambda表達(dá)式如何使用

jdk
小樊
84
2024-06-14 17:28:50

在JDK8中,Lambda表達(dá)式是一種簡(jiǎn)潔的語(yǔ)法來(lái)代替匿名內(nèi)部類。Lambda表達(dá)式可以作為參數(shù)傳遞給方法或存儲(chǔ)在變量中,從而使代碼更簡(jiǎn)潔和易讀。

Lambda表達(dá)式的基本語(yǔ)法如下:

(parameters) -> expression

其中,parameters指定了Lambda表達(dá)式的參數(shù)列表,箭頭“->”分隔了參數(shù)列表和表達(dá)式部分,expression則是Lambda表達(dá)式的函數(shù)體。

以下是一些使用Lambda表達(dá)式的示例:

  1. 使用Lambda表達(dá)式實(shí)現(xiàn)一個(gè)簡(jiǎn)單的接口:
interface GreetingService {
    void sayHello(String name);
}

public class LambdaExample {
    public static void main(String[] args) {
        GreetingService greetingService = (name) -> System.out.println("Hello, " + name);
        greetingService.sayHello("Alice");
    }
}
  1. 在集合操作中使用Lambda表達(dá)式:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");

// 使用Lambda表達(dá)式對(duì)集合進(jìn)行遍歷
names.forEach(name -> System.out.println("Hello, " + name));

// 使用Lambda表達(dá)式對(duì)集合進(jìn)行篩選
List<String> filteredNames = names.stream()
                                    .filter(name -> name.length() > 4)
                                    .collect(Collectors.toList());

Lambda表達(dá)式的使用可以大大簡(jiǎn)化代碼編寫和閱讀,尤其是在函數(shù)式編程和集合操作方面。

0