fun test(temp: Int) {
temp = 5
}
编译器抛出错误,说“无法重新分配val”。
局部变量是否仅在Kotlin中读取?
答案 0 :(得分:9)
函数参数始终是只读的(即声明为val
);
如果要更改它,则需要使用(新)局部变量:
fun test(temp: Int) {
var myTemp = temp
myTemp = 5
}
答案 1 :(得分:0)
temp
不是局部变量 - 它是一个函数参数。没有必要重新分配它。