Kotlin:如何修改一对值?

为什么我不能改变这一对中的值:

var p: Pair<Int, String> = Pair(5, "Test") p.first = 3 

p.firstp.first :Val不能被重新分配

像大多数数据类一样,它是不可变的。 其定义是有效的

 data class Pair<out A, out B>(val first: A, val second: B) 

如果它是可变的,它不能在out Aout B协变,也不可以作为Map键使用。

但是,像其他数据类一样,可以通过更改进行复制 。

 p = p.copy(first = 3) 
    Interesting Posts