swift 數組

swift的數組是存放數據,相對object-c而言,swift更簡單,對數組的元素的屬性更加弱化,不須要強制數組元素是對象swift

數組的定義數組

//定義不可變數組
let arrt = ["a","b",1,[2,"l"]]
//定義可變數組
var arr = ["a","b",1,[2,"l"]]

數組的長度app

//數組的長度 用 count
var arr = ["a","b",1,[2,"l"]]
let length = arr.count
print("length = \(length)")
//打印結果
 length = 4

建立空數組函數

//建立空數組 -- 直接定義
var arr1 = []
//規定數組元素的的類型,與swift1 的寫法有所不一樣  這塊需注意
var arr2 = [String]()

建立一個給定的大小,並用初始值的數組spa

var arr = [String](count: 4, repeatedValue: "s")

print("arr = \(arr)")

//打印結果爲:
arr = ["s", "s", "s", "s"]
//建立一個有四個元素的數組,並指定四個值的數組:   
var arr:[Int] = [1, 2, 3,4]

print("arr = \(arr)")
//打印結果爲:
arr = [1, 2, 3, 4]

** 注意:
當賦值與規定的類型不符時程序就會報錯

數組的取值code

//直接經過下標取值  這和 oc同樣
var arr:[Int] = [1, 2, 3,4]
var someObj = arr[1]
print("someObj = \(someObj)")
//打印結果爲:
someObj = 2

數組添加元素對象

//一種是使用 append() 方法  一種是直接賦值(+=)
var arr = [String]()

arr.append("a")
arr.append("b")
arr += ["cde"]


print( "arr ==  \(arr)" )
print( "arr 第一個元素 ==  \(arr[0])" )
print( "arr 第二個元素 ==  \(arr[1])" )
print( "arr 第三個元素 ==  \(arr[2])" )

//打印結果是:
arr ==  ["a", "b", "cde"]
arr 第一個元素 ==  a
arr 第二個元素 ==  b
arr 第三個元素 ==  cde

數組元素的修改blog

//經過索引修改數組的值:

var arr = [1,2,"s","c"]

arr[1] = "g"

print( "arr 第二個元素 ==  \(arr)" )

//打印結果是:
arr 第二個元素 ==  [1, g, s, c]

數組的遍歷索引

//使用 for-in

var arr = [String]()

arr.append("one")
arr.append("two")
arr += ["three"]

for element in arr {
    print(element)
}

//運行結果
one
two
three

//使用 EnumerateSequence() 函數:
for (index, element) in EnumerateSequence(arr) {
    print("arr[\(index)] = \(element)")
}
//運行結果
arr[0] = one
arr[1] = two
arr[2] = three

 //swift3.0以後 用EnumerateSequence替代了enumeratethree

 

//數組   for in
var arr = [String]()
for index in 0...5{
    arr.append("\(index)")
}
print("arr = \(arr)")
//打印結果
arr = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]


//數組的遍歷 while
var i = 0
while i < arr.count{
    print(arr[i])
    i += 1
}
//打印結果
0
1
2
3
4
5
注意 :i++ 在swift3 以後 更推薦使用  i += 1

 

數組的拼接

//兩個類型相同的數組能夠相加

var arr1 = [Int](count:3, repeatedValue: 2)
var arr2 = [Int](count:3, repeatedValue: 1)

var arrAdd = arr1 + arr2

for item in arrAdd {
    print(item)
}
//打印結果爲:
2
2
2
1
1
1

空屬性

//空屬性(isEmpty)判斷一個數組是否爲空:

var arr = [Int]()

if arr.isEmpty{
    print("arr 爲空")
}else{
    print("arr 不爲空")
}
//打印結果爲:
arr 爲空

 ** 注意:此處的數組不能是 var arr = [] 這樣定義,這樣isEmpty系統會報錯

相關文章
相關標籤/搜索