iOS swift-数组

2017-07-06  本文已影响19人  青菜白玉堂

数组:(Array)是一串有序的由相同类型元素构成的集合,let修饰时不可变数组,var修饰时可变数组

// 定义一个可变数组,必须初始化才能使用

var array1 : [String] = [String]()

// 定义一个不可变数组

let array2 : [NSObject] = ["wwl", 18] 

声明

// 声明方式一

:var myArray1 : Array

// 声明方式二:var myArrray2 : [String] 

初始化

// 定义时直接初始化

var array3 = ["aaa", "sss", "ddd"] 

 // 类型推导出 string

 类型

// 先定义,后初始化

var array4 : Array<String>

array4 = ["fff", "ggg", "hhh"]

注意:数组必须要初始化才能使用,数组类型在声明的时候指定

数组操作:

// 添加数据

array.append("dd")

// 删除元素

array.removeFirst()

// 修改元素

array[0] = "ee"

// 取值

array[1]

//插入元素

array.insert("ttt", atIndex: 0)

// 取数组也可以用区间

array[1...2]

数组的遍历

// 普通遍历数组

for i in 0..<array.count{

print(array[i])  // 有下标

}

// for in 方式

for item in array {

print(item)  // 不需要下标

}

// 设置遍历的区间

for item in array[0..<2] { // 0..<2 开区间 0,1    0...2 闭区间 0,1,2

print(item)

}

数组的合并

只有相同类型的数组才可以合并

var stringArr1 = ["aa", "bb","cc"]

var stringArr2 = ["dd", "ee"]

var stringArr3 = array + array1;

// 不建议一个数组中存放多种类型的数据

var objectArr1 = [22, 33, "aa"]

var objectArr2 = ["bb", 44]

objectArr1 + objectArr2

通过一个返回布尔类型的isEmpty属性检查数组的长度是否为0

var stringArr = ["aa", "bb", "cc"]

if !stringArr.isEmpty {

print("stringArr have \(stringArr.count) items")

} else {

print("stringArr is empty")

}

stringArr have 3 items

用(+=)操作符来把一个数组添加到另一个数组的末尾

(+=)操作符来把一个元素添加到数组末尾  好像删除了

var stringArr = ["aa", "bb", "cc"]

var stringArr1 = ["dd", "ee", "ff"]

stringArr1 += stringArr

print(stringArr1)  // ["dd", "ee", "ff", "aa", "bb", "cc"]

Swift数组类型也提供初始化方法来创建确定长度和提供默认数值的数组。你可以通过这个初始化方法增加一个新的数组,元素的数量成为count,合适的默认值为repeatedValue

var threeStringArr = [String](count: 3, repeatedValue: "hi")

// 得益于类型推断,也可以不指定类型

var threeDoubleArr = Array(count: 3, repeatedValue: 2.0)

参考:http://www.cnblogs.com/10-19-92/p/5627619.html

上一篇下一篇

猜你喜欢

热点阅读