數(shù)組的介紹
數(shù)組(Array)是一串有序的由相同類型元素構(gòu)成的集合,數(shù)組中的集合元素是有序的,可以重復(fù)出現(xiàn)。在Swift中數(shù)組類型是Array,是一個(gè)泛型集合。數(shù)組分成:可變數(shù)組和不可變數(shù)組,分別使用let修飾的數(shù)組是不可變數(shù)組,使用var修飾的數(shù)組是可變數(shù)組。
數(shù)組的初始化
一、初始化一個(gè)空數(shù)組(類型:[數(shù)據(jù)類型]())
1、創(chuàng)建一個(gè)整形的空數(shù)組
let array = [Int] ()
這里array 數(shù)組變量 被let 修辭 ,array數(shù)組是不可變數(shù)組,只能訪問(wèn),不能修改
var array = [Int] ()
這里array 數(shù)組變量 被var 修辭 ,array數(shù)組是可變數(shù)組,可以動(dòng)態(tài)修改
2、創(chuàng)建任意可存儲(chǔ)任意類型的數(shù)組 [Any] ()
數(shù)組的使用
//創(chuàng)建一個(gè)可變數(shù)組(可存儲(chǔ)任意類型的數(shù)據(jù))
var arr:Array = [Any]()
//創(chuàng)建一個(gè)可變數(shù)組 (存儲(chǔ)字符串類型)
// var arr1:[String] = [String]()
// 1 向數(shù)組添加元素 appped()函數(shù)
//1.1向數(shù)組添加一個(gè)元素
arr.append("xiaoming")
print("arr == \(arr)")
arr.append(1)
print("arr = \(arr)");
//1.2向數(shù)組添加一個(gè)數(shù)組
let addArr:Array = [1,2,"tianjia"] as [Any]
arr.append(addArr)
print("addArr = \(arr)")
//1.3使用加法賦值運(yùn)算符(+=)也可以直接在數(shù)組后面添加元素但添加的元素必須是數(shù)組形式的 使用+=操作符時(shí),右邊的必須為數(shù)組,即使只有一個(gè)元素時(shí)也要為數(shù)組,還有就是通過(guò)這種方式你可以一次性給數(shù)組增加多個(gè)值
let addArr1 = [6,5] as [Any]
arr += addArr1
print("arr = \(arr)")
//1.4向數(shù)組插入元素
arr.insert("插入的元素", at: 1)
//2.移除數(shù)組里的元素
//2.1移除特定的元素
arr.remove(at: 0)
print("removeArr = \(arr)")
//2.2移除數(shù)組所有元素
arr.removeAll()
// removeAll方法接受一個(gè)參數(shù),允許清空數(shù)組時(shí)是否保持?jǐn)?shù)組的容量,該參數(shù)默認(rèn)值為false,即將數(shù)組的capacity容量設(shè)置為0。如果你想保持容量,可以參考下代碼:
// var originalCapacity = arr.capacity //
// originalCapacity = 12
// arr.removeAll(keepingCapacity: true)
// var newCapacity = arr.capacity //
// newCapacity = 12
// 由上代碼可以看出emptyArray在需要重新分配內(nèi)存之前可以存儲(chǔ)12個(gè)值,然而使用removeAll(),newCapcity則等于0。
//2.3移除數(shù)組的第一個(gè)元素
// arr.removeFirst()
//2.4移除數(shù)組的最后一個(gè)元素
// arr.removeLast()
// 在這些移除的方法里都有返回被移除的數(shù)據(jù)
// 3. 數(shù)組的長(zhǎng)度
let count = arr.count
print("arrCont = \(count)")
// 4.數(shù)組中元素的修改
arr[1] = "xiugai"
print("xiuGai = \(arr)")
// 5.訪問(wèn)數(shù)組中的元素
let item = arr[1]
print("item = \(item)")
遍歷數(shù)組
var stringArr:[String] = ["xiaoming","tianya","xiaoming","tiantian"]
// 遍歷數(shù)組
for item in stringArr {
print("iteem == \(item)")
}
for item in 0..<stringArr.count {
print("iteem == \(item)")
}
// 設(shè)置遍歷的區(qū)間
for item in stringArr[0...2] {
print("iteem == \(item)")
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持html5模板網(wǎng)。
【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!