1、NSMutableArray、NSArray(数组)
// 通过 [] 创建一个数组和字典,通过 index 和 key获取对应的值
var shoppingList = ["catfish","1", "tulips","blue paint"]
//直接使用下标语法来替换数组中的元素:
shoppingList[1] ="bottle of water"
//直接使用下标语法来获取数组中的元素:
let arrayfrist = shoppingList[0]
println(arrayfrist)
println(shoppingList)
//可以存放不同类型的元素
var shopping = ["hntl",2]
//使用 append方法在数组尾部增加新的元素:
shopping.append("Flour")
//使用加法赋值运算符(+=)也可以直接在数组尾部增加新的元素:
shopping += ["4"]
// 使用数组的 insert (atIndex:)方法在 atIndex 之前添加元素:
shopping.insert("0", atIndex:0)
shopping[1...3] = ["1","3"]
// 使用 removeAtIndex方法来移除数组中的某一项。这个方法把数组在索引位置存储的元素移除,并返回这个被移除的元素(如果不需要可以无视它):
let shoppingString = shopping.removeAtIndex(0)
// 如果只想把数组中的最后一项移除,使用 removeLast方法而不是 removeAtIndex 方法来避免获取数组的count属性。removeLast也会返回被移除的数据项:
let appleString = shopping.removeLast()
println(shopping)
println(shoppingString)
println(appleString)
// 创建空数组
var harray :NSMutableArray = []
// 使用构造器创建一个指定数据类型的空数组
var emptyArray = [String]()
emptyArray = ["2"]
println(emptyArray)
// 数组还提供了创建特定大小并且元素被同时初始化的构造器。把数组的元素数量(count)和初始值(repeatedValue)传入数组即可:
var threeDoubles = [Double](count:2, repeatedValue: 2.0)
println(threeDoubles)
// 数组还提供了创建特定大小并且元素被同时初始化的构造器。把数组的元素数量(count)和初始值(repeatedValue)传入数组即可:
var anotherThreeDoubles = Array(count: 3, repeatedValue: 3.5)
println(anotherThreeDoubles)
// 使用加法操作符(+)来合并两种相同类型的数组:
var sixDoubles = threeDoubles + anotherThreeDoubles
println(sixDoubles)
// 使用 isEmpty属性(返回Bool值)检查 count属性的值是否为 0 。
if shopping.isEmpty
{
println("The shopping list is empty.")
}else {
println("The shopping list is not empty.")
}
// 使用 for-in 循环遍历数组中所有元素:
for item in shoppingList {
println("1--\(item)")
}
// 如果同时需要每个元素的值和索引值,可以使用全局函数 enumerate来进行数组遍历。enumerate 返回一个由元素索引值和数据值组成的键值对。我们可以把这个键值对分解成临时常量或者变量来进行遍历:
for (index, value) in enumerate(shoppingList) {
println("Item \(index + 1):\(value)")
}
// Item 1: catfish
// Item 2: bottle of water
// Item 3: tulips
// Item 4: blue paint