gpt4 book ai didi

kotlin - 如何在 Kotlin 中的函数之间传播默认参数?

转载 作者:行者123 更新时间:2023-12-04 15:31:40 25 4
gpt4 key购买 nike

Kotlin 有 default arguments for function and constructor parameters .现在,我有一个功能

fun foo(bar: String = "ABC", baz: Int = 42) {}

我想从不同的地方调用它,但也保留不传递参数而是使用默认值的可能性。

我知道,我可以在调用函数中声明默认参数
fun foo2(bar: String = "ABC", baz: Int = 42) {
// do stuff
foo(bar, baz)
}

fun foo3(bar: String = "ABC", baz: Int = 42) {
// do other stuff
foo(bar, baz)
}

但现在我的默认参数是 foo毫无意义,因为它总是被覆盖,而且我在所有调用函数中都复制了默认参数。那不是很干。

有没有更好的方法来传播默认参数?

最佳答案

而不是具有相同默认参数的三个函数:

fun foo(bar: String = "ABC", baz: Int = 42)
fun foo2(bar: String = "ABC", baz: Int = 42)
fun foo3(bar: String = "ABC", baz: Int = 42)

创建一个接受参数的包装类,并具有不带参数的函数:
class Foo(val bar: String = "ABC", val baz: Int = 42) {

fun foo() { /* ... */ }

fun foo2() {
// ...
foo()
}

fun foo3() {
// ...
foo()
}
}

关于kotlin - 如何在 Kotlin 中的函数之间传播默认参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40720361/

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