gpt4 book ai didi

android - 无法将值重新分配给函数参数,而它未声明为 val,无法重新分配 val

转载 作者:行者123 更新时间:2023-11-29 14:34:33 25 4
gpt4 key购买 nike

我正在尝试在 kotlin 中编写一个函数,但我无法将值重新分配给函数参数,它说 val cannot be reassigned 。

class WebView{

var homepage = "https://example.com"

fun webViewLoad(url: String, preferredOrientation: String) {

if (url.equals("homepage")){
url = homepage
}
}
}

当我尝试为 url = homepage 赋值时,出现错误 val cannot be reassigned ,我是 kotlin 的新手,我不明白问题出在哪里,将不胜感激。

最佳答案

函数参数的作用类似于无法重新分配的 val 变量。这里需要添加带条件初始化的变量:

fun webViewLoad(url: String, preferredOrientation: String) {
val urlValue = if (url.equals("homepage")){
homepage
} else {
url
}
... //use here "urlValue" variable
}

顺便说一下,在 kotlin 中你不需要使用 equals 函数来比较字符串:普通运算符 == 会自动替换为字节码中的equals

关于android - 无法将值重新分配给函数参数,而它未声明为 val,无法重新分配 val,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57200412/

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