- var shoppingList: String[] = ["Eggs", "Milk"]
由 于Swift 的类型推断机制,当我们用字面语句构造只拥有相同类型值数组的时候,我们不必把数组的类型定义清楚。
shoppinglist的构造也可以这样写:
- var shoppingList = ["Eggs", "Milk"]
我们可以通过数组的方法和属性来访问和修改数组,或者下标语法。
还可以使用数组的只读属性count来获取数组中的数据项数量。
- println("The shopping list contains \(shoppingList.count) items.")
- if shoppingList.isEmpty {
- println("The shopping list is empty.")
- } else {
- println("The shopping list is not empty.")
- }
shoppingList.append("Flour")
除此之外,使用加法赋值运算符(+=)也可以直接在数组后面添加数据项:
- shoppingList += "Baking Powder"
我们也可以使用加法赋值运算符(+=)直接添加拥有相同类型数据的数组。
- shoppingList += ["Chocolate Spread", "Cheese", "Butter"]
可以直接使用下标语法来获取数组中的数据项,把我们需要的数据项的索引值放在直接放在数组名称的方括号中:
我们也可以用下标来改变某个已有索引值对应的数据值:
- var firstItem = shoppingList[0]
- shoppingList[0] = "Six eggs"
- shoppingList[4...6] = ["Bananas", "Apples"]
- shoppingList.insert("Maple Syrup", atIndex: 0)
- let mapleSyrup = shoppingList.removeAtIndex(0)
- let apples = shoppingList.removeLast()
就像后者一样,前者也会返回被移除的数据项
数组的遍历
- for item in shoppingList {
- println(item)
- }
- for (index, value) in enumerate(shoppingList) {
- println("Item \(index + 1): \(value)")
- }
- var threeDoubles = Double[](count: 3, repeatedValue:0.0)
- var anotherThreeDoubles = Array(count: 3, repeatedValue: 2.5)
最后,我们可以使用加法操作符(+)来组合两种已存在的相同类型数组。
新数组的数据类型会被从两个数组的数据类型中推断出来:
- var sixDoubles = threeDoubles + anotherThreeDoubles