gpt4 book ai didi

java - 如何将函数作为参数传递给 computeIfAbsent 方法?

转载 作者:搜寻专家 更新时间:2023-11-01 01:15:29 27 4
gpt4 key购买 nike

我是 Java 的新手,有点从 C# 过渡到 Java。 java.util.function有一个定义为 Function 的接口(interface)这是输入到 computeIfAbsent Map的方法| .

我想定义该函数并将其委托(delegate)给 computeIfAbsent方法。

map.computeIfAbsent(key, k => new SomeObject())

有效,但我希望它带有回调 where func。 但问题是 Function需要定义输入参数。我怎样才能将它设置为 void或者没有参数。

map.computeIfAbsent(key, func);

最佳答案

computeIfAbsent 将始终为传递的 Function 提供一个输入参数 - 这将是关键。

因此,就像你可以写的那样:

map.computeIfAbsent(key, k -> new SomeObject());

你也可以这样写(假设你的 Map 的键是一个 String):

Function<String,SomeObject> func = k -> new SomeObject();
map.computeIfAbsent(key, func);

关于java - 如何将函数作为参数传递给 computeIfAbsent 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54743797/

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