Swift数组简单语法

  1. var shoppingList: String[] = ["Eggs""Milk"
由 于Swift 的类型推断机制,当我们用字面语句构造只拥有相同类型值数组的时候,我们不必把数组的类型定义清楚。
 shoppinglist的构造也可以这样写:
  1. var shoppingList = ["Eggs""Milk"
我们可以通过数组的方法和属性来访问和修改数组,或者下标语法。 
还可以使用数组的只读属性count来获取数组中的数据项数量。
  1. println("The shopping list contains \(shoppingList.count) items."
使用布尔项isEmpty来作为检查count属性的值是否为0的捷径。
  1. if shoppingList.isEmpty { 
  2.     println("The shopping list is empty."
  3. else { 
  4.     println("The shopping list is not empty."
也可以使用append方法在数组后面添加新的数据项:

shoppingList.append(
"Flour"

除此之外,使用加法赋值运算符(+=)也可以直接在数组后面添加数据项:
  
  
  1. shoppingList += "Baking Powder" 
我们也可以使用加法赋值运算符(+=)直接添加拥有相同类型数据的数组。
  
  
  1. shoppingList += ["Chocolate Spread""Cheese""Butter"

可以直接使用下标语法来获取数组中的数据项,把我们需要的数据项的索引值放在直接放在数组名称的方括号中:
  
  
  1. var firstItem = shoppingList[0] 
我们也可以用下标来改变某个已有索引值对应的数据值:
  1. shoppingList[0] = "Six eggs" 
还可以利用下标来一次改变一系列数据值,即使新数据和原有数据的数量是不一样的。下面的例子把"Chocolate Spread","Cheese",和"Butter"替换为"Bananas"和 "Apples":
  1. shoppingList[4...6] = ["Bananas""Apples"
插入数组
  1. shoppingList.insert("Maple Syrup", atIndex: 0) 
删除数组
  1. let mapleSyrup = shoppingList.removeAtIndex(0) 
  1. let apples = shoppingList.removeLast() 
如果我们只想把数组中的最后一项移除,可以使用removeLast方法而不是removeAtIndex方法来避免我们需要获取数组的count属性。
就像后者一样,前者也会返回被移除的数据项

数组的遍历
  1. for item in shoppingList { 
  2.     println(item) 
如果我们同时需要每个数据项的值和索引值,可以使用全局enumerate函数来进行数组遍历。enumerate返回一个由每一个数据项索引值和数据值组成的键值对组。我们可以把这个键值对组分解成临时常量或者变量来进行遍历:
  1. for (index, value) in enumerate(shoppingList) { 
  2.     println("Item \(index + 1): \(value)"

  1. var threeDoubles = Double[](count: 3, repeatedValue:0.0) 
  1. var anotherThreeDoubles = Array(count: 3, repeatedValue: 2.5)
最后,我们可以使用加法操作符(+)来组合两种已存在的相同类型数组。
新数组的数据类型会被从两个数组的数据类型中推断出来:
  1. var sixDoubles = threeDoubles + anotherThreeDoubles 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值