gpt4 book ai didi

syntax - Kotlin 默认参数 : forbid zero arguments calls

转载 作者:行者123 更新时间:2023-12-04 02:21:52 25 4
gpt4 key购买 nike

在我的项目中我有这样一个函数:

fun doCoolStuff(arg1: Int = 0, arg2: String? = null) {
}

我希望它在以下情况下使用它:

obj.doCoolStuff(101) // only first argument provided
obj.doCoolStuff("102") // only second argument provided
obj.doCoolStuff(103, "104") // both arguments provided

但不是在这个:

obj.doCoolStuff() // illegal case, should not be able to call the function like this

我如何在语法层面实现这一点?

最佳答案

Kotlin 中没有语法可以让您完成所需的工作。使用重载函数(我会使用两个,一个用于每个必需的参数):

fun doCoolStuff(arg1: Int, arg2: String? = null) { ... }
fun doCoolStuff(arg2: String?) { doCoolStuff(defaultIntValue(), arg2) }

关于syntax - Kotlin 默认参数 : forbid zero arguments calls,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46115904/

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