gpt4 book ai didi

java - Android kotlin - 在 if else 条件中声明一个 val

转载 作者:行者123 更新时间:2023-12-01 06:49:06 24 4
gpt4 key购买 nike

if (countryCodeValue == "de"){
val geocoder = Geocoder(this, Locale.GERMAN)
}else{
val geocoder = Geocoder(this, Locale.ENGLISH)
}



try {
val addresses = geocoder...

geocoder 显示未解析的引用,但为什么?

我真的需要这样,特别是对于其他一些情况,否则解决方法会因某种原因消耗更多的处理能力

最佳答案

因为您在语句的每个分支内声明它,这意味着它仅在该分支中是本地的。仅仅因为它们具有相同的名称并不意味着它们是相同的变量。

使用这个:

val geocoder = if (countryCodeValue == "de") {
Geocoder(this, Locale.GERMAN)
} else {
Geocoder(this, Locale.ENGLISH)
}

Kotlin 的 if-else 表达式也是语句,这意味着您可以使用它们设置变量。

关于java - Android kotlin - 在 if else 条件中声明一个 val,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52450005/

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