gpt4 book ai didi

来自java的kotlin函数默认参数

转载 作者:IT老高 更新时间:2023-10-28 13:29:33 25 4
gpt4 key购买 nike

鉴于以下 Kotlin 类:

class Foo {
public fun bar(i: Int = 0): Int = 2 * i
}

我应该如何从 java/groovy 代码中调用没有任何参数的“bar”函数?

def f = new Foo()
f.bar() //throws: java.lang.IllegalArgumentException: Parameter specified as non-null contains null

最佳答案

您现在可以在 Kotlin 中执行此操作。对于你的类方法,使用 @JvmOverloads annotation .

class Foo {
@JvmOverloads public fun bar(name: String = "World"): String = "Hello $name!"
}

现在只需从 Java 中调用它:

Foo foo = new Foo();
System.out.println(foo.bar());
System.out.println(foo.bar("Frank"));

输出以下内容:

Hello World!

Hello Frank!

关于来自java的kotlin函数默认参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17348084/

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