gpt4 book ai didi

java - 将 Java 转换为包含代码的 Kotlin BiFunction

转载 作者:行者123 更新时间:2023-11-30 05:27:16 25 4
gpt4 key购买 nike

我正在尝试将我的 Java 类转换为 Kotlin。这是Java代码:

Observable.just("Stacey")
.zipWith(Observable.just(6),
(name, age) -> {
String text;
if(age < 18){
text = name + " is a child";
}else{
text = name + "is not a child";
}
return text;
}
);

这就是我将其转换成的:

Observable.just("Stacey")
.zipWith(Observable.just(6),
BiFunction<String, Int, String> {name, age ->
var text: String
if(age < 18){
text = "$name + is a child"
}else{
text = "$name + is not a child"
}
return text
}
)

Lambda 表示法似乎根本不起作用,或者我只是无法弄清楚。我发现 Kotlin 中 BiFunctions 的所有示例都像这样直接返回一个值

BiFunction {name, age -> name+age}

这在语法上是正确的,但在返回某些内容之前我需要一些额外的逻辑。出现两条错误消息:

  • 此处不允许“返回”

  • 类型不匹配。必需:单位,找到:字符串

但我确实想返回一个字符串,并且我也明确声明了它。但是还有哪里可以放置返回呢?

最佳答案

我也遇到过这个问题,你只需更换即可返回文本返回@BiFunction文本

有关说明,您可以查看此处:

Kotlin: Whats does "return@" mean?

https://tutorialwing.com/labeled-return-or-return-in-kotlin-with-example

关于java - 将 Java 转换为包含代码的 Kotlin BiFunction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58282506/

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