有没有办法将元素/值附加到元组?

Hon*_*ney 0 tuples swift

反正有没有为元组添加新元素?

var tuple = (v1: 1,v2: 2)

tuple.v3 = 3 // Error
Run Code Online (Sandbox Code Playgroud)

"错误:元组类型的值'(v1:Int,v2:Int)'没有成员'v3'"

Dáv*_*tor 6

不可以.具有不同数量的元素或不同类型的元素的每个元组在Swift类型系统中表示不同的类型.因此,一旦你创建了一个元组,就不能向它添加元素,因为这会改变元组的类型.

一些非常基本的元组及其类型的例子:

let tupleWithTwoInts = (1,2) //has type (Int,Int)
let tupleWithThreeInts = (1,2,3) //has type (Int,Int,Int)
let tupleWithTwoStrings = ("a","b") //has type (String,String)
let tupleWithIntAndString = (1,"a") //has type (Int,String)
let tupleWithStringAndInt = ("a",1) //has type (String,Int)
Run Code Online (Sandbox Code Playgroud)

即使元素的顺序也会对元组的类型产生影响.

type(of: tupleWithIntAndString) == type(of: tupleWithStringAndInt) //false
Run Code Online (Sandbox Code Playgroud)