數(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í)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選