标签: val

在 Kotlin 中,为什么 val 整数的值可以通过 inc() 方法重新分配?

考虑以下,

val x: Int = 0

val变量无法更改,因此这样做x += 1不起作用

编译器说Val cannot be reassigned

为什么那么x.inc()工作正常

x.inc()重新分配值 from 0to1

variables readonly variable-assignment kotlin val

1
推荐指数
1
解决办法
179
查看次数

kotlin编译器如何知道val应该是属性还是函数

下面的kotlin代码 val nameHash get() = name.hashCode() 可以编译成java如下

public final int getNameHash() {
    return name.hashCode();
}
Run Code Online (Sandbox Code Playgroud)

并且属性 nameHash 消失。然而,当 val 更改为 var 时,编译器会说“属性必须初始化” var 和 val 之间更深层次的区别是什么?

var kotlin val

1
推荐指数
1
解决办法
195
查看次数

Kotlin Var 和 Val Getter 和 Setter 问题

我是 Kotlin 编程语言的新手。(Java -> Kotlin)

var x
    get()= 4; // Showing error Property must be initialized

val y
    get()= 4; // No error
Run Code Online (Sandbox Code Playgroud)

为什么会出现这种情况?

android kotlin val

0
推荐指数
1
解决办法
414
查看次数

标签 统计

kotlin ×3

val ×3

android ×1

readonly ×1

var ×1

variable-assignment ×1

variables ×1