我在kotlin中定义了函数“ fireAtTarget”。作为参数,我需要为列表插入一个默认值。我怎样才能做到这一点?
fun fireAtTarget(massKg: Double=80.2, eachGunAmmo: List<Int>=listOf(2, 3): Boolean{
//function body
}
我希望在不带参数的情况下调用fireAtTarget()并获得0条错误消息
答案 0 :(得分:0)
您的代码中存在语法错误:您只是忘了在函数参数声明中关闭右括号:
fun fireAtTarget(massKg: Double=80.2, eachGunAmmo: List<Int> = listOf(2,3)): Boolean {
//function body
}
答案 1 :(得分:0)
我遇到此问题(IntelliJ报告错误Expecting a top level declaration
),代码如下:
fun foo(value: List<Int>=listOf(1,2)) { }
此问题已通过在等于List<Int>*space*=listOf
之前插入空格来解决。
fun foo(value: List<Int> = listOf(1,2)) { }
Kotlin语言有一个>=
运算符,可能会与原始运算符混淆。
请参阅:https://kotlinlang.org/docs/reference/operator-overloading.html#comparison
答案 2 :(得分:0)
您可以使用以下默认值创建列表:
val defaultValueList = List<String>(10) {"I am default"}