Kotlin:如何修改一对中的值?

时间:2017-11-07 03:03:41

标签: tuples kotlin

为什么我无法更改对中的值:

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

p.first下的错误:Val无法重新分配

1 个答案:

答案 0 :(得分:10)

与大多数数据类一样,

Pair是不可变的。它的定义实际上是

public override bool FinishedLaunching(UIApplication app, NSDictionary options) {
    global::Xamarin.Forms.Forms.Init();
    CarouselViewRenderer.Init();   //Add this line.
    LoadApplication(new App());

    return base.FinishedLaunching(app, options);
}

如果它是可变的,则它在data class Pair<out A, out B>(val first: A, val second: B) out A中不能协变,也不能安全地用作Map键。

但是,与其他数据类一样,它可以是copied with changes

out B