gpt4 book ai didi

java - 方法引用和 lambda 之间的区别

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:40:15 26 4
gpt4 key购买 nike

<分区>

我预计在下面的代码中两个 put 操作都会抛出 NullPointerException,但实际上 lambda 表达式工作正常,而只是方法引用抛出 NPE。

public static void main(String... args) {
Object object = null;
Map<String, FuncInterface> map = new HashMap<>();

map.put("key1", () -> object.notify()); // works
map.put("key2", object::notify); // throws NPE
}

@FunctionalInterface
private interface FuncInterface {
public void someAction();
}

有什么区别?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com