Swift基础——数组Array
Swift基礎(chǔ)——數(shù)組Array
數(shù)組:使用有序列表存儲同一類型的多個值,相同值可出現(xiàn)在一個數(shù)組的不同位置。
數(shù)組簡介
首先,和String一樣我們也來看看他的一些Api方法
常規(guī)操作方法
reverse、reversed:數(shù)組反轉(zhuǎn)
reverse()在原數(shù)組操作,reversed()返回新的數(shù)組不會操作破壞原數(shù)組
swapAt:指定索引位置交換
記住startIndex這些索引是從“1”開始數(shù)的哦
數(shù)組添加合并
數(shù)組元素替換
數(shù)組增刪
當然刪除等這些運用加以其他操作就會變得很神奇,我們嘗試使用閉包語句來感受一下:
排序我們都知道默認升序,我們可以使用閉包使其降序排序:
到這里,尾部加ed大概應(yīng)該能看出來是什么意思了吧,既然氛圍鋪墊到這里了,那就再演示一個排序例子吧:
下面看看這些簡單一維數(shù)組用到的代碼示例吧
二維數(shù)組創(chuàng)建及數(shù)組遍歷
二維數(shù)組創(chuàng)建
嗯。。。。發(fā)現(xiàn)了吧本質(zhì)就是一維數(shù)組里面還有一個一維數(shù)組
數(shù)組遍歷
完了嗎?當然沒有,再看看其他幾種遍歷方式吧:
看出來Swift的包容性了吧,繼續(xù)看看其他的吧:
遍歷索引和值
forEach遍歷
數(shù)組遍歷基本就結(jié)束了,我們來關(guān)心一些其他的小問題,嗯。。。比如如何比較兩個數(shù)組差異:
difference:獲得差異
來瞅瞅這里用到的這些代碼示例吧:
//import UIKitimport Foundation//定義二維數(shù)組:直接賦值兩個一維數(shù)組 var arr1 = [1 , 2 , 3] var arr2 = [1 , 2 , 3] var arr = [arr1 , arr2]//定義二維數(shù)組并指定為整數(shù)類型 var arrInt = Array<Array<Int>>() //把那倆一維數(shù)組添加進來 arrInt.append(arr1) arrInt.append(arr2) arrInt //數(shù)組遍歷,循環(huán) for row in arrInt{for column in row{//print(column)} }//當然還有按索引遍歷 for i in 0..<arr1.count{print(arr1[i]) } //當然Swift嘛很隨意的,我們可以省略這個索引 for item in arr1{print(item) } //你以為這是Swift的極限?開玩笑,他甚至引入了sql語句的條件判斷 var strArr = ["張鑫樂" , "張三" , "李四" , "張大仙"] for item in strArr where item.hasPrefix("張"){print(item) }//遍歷數(shù)組索引和值 for (index , value) in strArr.enumerated(){print("\(index) : \(value)") } //forEach遍歷 strArr.forEach{item inprint(item) } //比較數(shù)組差異 var strArrCopy = ["張鑫樂" , "張三" , "李四" , "張大腳"] let dif = strArr.difference(from: strArrCopy) print(dif)數(shù)組常用操作
字符串與數(shù)組的轉(zhuǎn)換
split:把字符串轉(zhuǎn)換為數(shù)組
joined:數(shù)組合并成字符串
zip:可以將兩個序列中的元素一一對應(yīng)的方式重新組合成一個序列
可是如果元素個數(shù)對應(yīng)不上怎么辦?直接看結(jié)果:
數(shù)組過濾
filter、allSatisfy、where、partition等
partition:定位排序,類似于快排中的定位數(shù)字
min、max:獲取序列中的最小值、最大值
氛圍到這了都,感受一下字典吧,后續(xù)會詳細介紹
prefix:數(shù)組截取
drop:顧名思義丟棄
數(shù)組降維
諾,顧名思義啦,就是把多位數(shù)組通過一些方法轉(zhuǎn)換為維度更低的數(shù)組
flatMap:獲取每個數(shù)組元素并放在一個一維數(shù)組里
最后看看這個部分用到的代碼示例吧:
私貨彩蛋:我從不后悔對任何人好,哪怕是我看錯的人,哪怕我被辜負。因為,我對你好,不是因為你有多好,只是因為我很好 —— 慧海大師
總結(jié)
以上是生活随笔為你收集整理的Swift基础——数组Array的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python编程*三角形图形创意图片_使
- 下一篇: 未来的数字家庭