如何为UInt32分配多个值

时间:2015-07-31 18:55:03

标签: xcode

我正在尝试将鸟群设置为两个数字,这样当我分配变量时,我可以使用多个"否则如果"稍后与该组的陈述 代码:

Xcode不允许我这样做我在Swift

让birdgroup:UInt32 = 2,3

1 个答案:

答案 0 :(得分:1)

您可以使用ArraySet或元组在单个变量中存储多个值。如果订单很重要,请使用Array或元组,但如果订单无关紧要,您可以使用SetArraySet都允许您更改变量中存储的值的数量,而元组变量的长度必须始终相同。此外,您可以遍历数组或集合中的项目,但不能遍历元组。

Array是三者中最常用的,所以如果你不确定使用哪一个,那么这是一个不错的首选。

总之,此表显示了可能性及其属性:

           Loopable  Unloopable
Ordered    Array     Tuple
Unordered  Set       (none)

最后,数组或集合中的所有项必须是相同类型(或者如果使用基类定义数组或集合,则从相同类型派生)。这被称为同质的。元组可以包含不同的类型,也称为异构。

           Homogeneous  Heterogeneous
Ordered    Array        Tuple
Unordered  Set          (none)
Swift文档中的

Collection Types介绍了如何使用ArraySet

阵列

使用

创建数组
var birdgroup: [UInt32] = [2, 3]

birdgroup[0]等于2,birdgroup[1]等于3.您还可以通过循环访问项目:

for bird in birdgroup {
    println("\(bird)")
}

您可以使用

声明一个集合
var birdgroup: Set<UInt32> = [2, 3]

因为套装没有订单(想象每件商品都放在一个袋子里),你就不能要求&#34;首先&#34;或&#34;秒&#34;项目。相反,循环遍历集合中的每个项目:

for bird in birdgroup {
    println("\(bird)")
}

元组

let birdgroup: (UInt32, UInt32) = (2, 3)

元组也保留其商品的顺序。 birdgroup.0等于2,birdgroup.1等于3.如果你喜欢这个数字,你也可以给元组的每个项目命名:

let birdgroup: (UInt32, UInt32) = (foo: 2, bar: 3)

birdgroup.foo为2,birdgroup.bar为3。

此外,元组中的值不必都是相同的类型。您可以组合使用不同的类型,例如

let heterogeneousTuple: (UInt32, String) = (2, "three")