Swift之陣列使用

2021-07-03 18:26:59 字數 2645 閱讀 7518

swift

提供兩種型別的集合,一種是陣列

array,

另外一種是字典

dictionary,

他們之間的共同點是都是用來儲存相同型別的資料,不同點是陣列中存放的資料是有序的,二字典中存放的資料時無序的。字典還具有兩外乙個特性,就是字典中所儲存的資料是鍵值對(

key - value

)形式存在。

這裡主要寫一下swift中陣列型別使用

一、陣列型別定義

想定義其他變數或者常量一樣,如果我們在

swift

中定義乙個資料,也可以通過型別標註指定他的型別。在

swift

中,陣列型別有兩種寫法:

// 一是完整版:

var colorarray : array= ["red","blue","green"]

//另外一種是簡化版

var colorarray1 : [string] = ["red", "blue", "green"]

// 可以使用推導來宣告陣列

var colorarray2 = ["red", "blue","green"]

var integerarray = [1,2,3]

/*注:1、我們在定義陣列時,指定陣列中的資料型別,我們必須統一存放該型別陣列

2、我們在定義陣列時,不指定陣列中的資料型別,則陣列預設為anyobject型別。

*/

二、我們在定義陣列時可以不指定陣列型別:

var inferlist = ["eggs",123,true]

for item in inferlist

需要指出的是這種情況下產生的陣列時nsarray的陣列。

判斷陣列是否為空,swift中陣列為空判斷可以直接呼叫isempty方法

if inferlist.isempty else

也可以採用陣列元素個數進行判斷:

if inferlist.count == 0 else

三、swift

提供兩種方法為陣列新增元素

第一種:通過呼叫陣列的內嵌方法(

)為陣列新增新元素

第二種:通過加法賦值運算子來為當前陣列新增新元素

inferlist += ["你好"]
/*

第二種方法更為強大的是可以進行批量新增,批量新增的陣列只能存放一種資料型別

inferlist

+= ["紅茶

","綠

","黑茶

"]*/

四、修改陣列元素

swift

中修改陣列中元素可以先通過陣列名

+方括號

+下標的方式來獲取陣列中某個元素的值

如獲取inferlist

第乙個元素

var firseitem = inferlist[0]

修改具體元素的值

inferlist[0] = "egg"

swift

提供了批量修改陣列元素的功能

inferlist[4...6] = ["呵呵","嘿嘿"]

/*這種情況下,4、5元素被修改,6及以後元素被移除,若不移除則 inferlist[4

...6

] = ["呵呵

", "哈哈

", "嘻嘻

"]*/

五、 為陣列插入、移除元素

swift

中通過呼叫

insert(atindex:)

方法在陣列的任意指定位置插入乙個新的元素

inferlist.insert("insertelements", atindex: 0)

swift

中通過呼叫

removeatindex

方法移除指定位置元素,其他元素自動前移

inferlist.removeatindex(0)

第乙個位置

"insertelements"

被移除

也可以使用removelast(),移除最後乙個元素

inferlist.removelast()

最後乙個元素"黑茶

"被移除

六、陣列遍歷

在swift中陣列遍歷一共有兩種方法:

1、通過

for in

迴圈快速遍歷陣列

for item in inferlist

2、 通過

enumerate

全域性函式來便利陣列,這個函式將會將陣列中的元素作為乙個型別為(

index,value

)元祖返回

for (var (index,value)) in enumerate(inferlist)

Swift 學習之陣列

swift 學習之陣列 1.初始化陣列 println indextzero indextzero 列印 indextzero iphone 2.陣列的個數 3.陣列元素的最後追加 3.2 方法二 用加法運算子 4.陣列元素的插入 5.修改陣列中的元素 6.陣列元素的刪除 println index...

swift之URLSession的使用

urlsession是乙個可以響應傳送或者接受http請求的關鍵類,可以通過urlsessionconfiguration類新建urlsession例項。有以下三種方式 urlsessionconfiguration urlsessionconfiguration可以配置會話 session 屬性像...

窺探Swift之陣列安全索引與陣列切片

在swift中的陣列和字典中下標是非常常見的,陣列可以通過索引下標進行元素的查詢,字典可以通過鍵下標來獲取相應的值。在使用陣列時,乙個常見的致命錯誤就是陣列越界。如果在你的應用程式中陣列越界了,那麼對不起,如果由著程式的性子的話是會崩潰的。為了防止崩潰呢,我們會對集合做一些安全的處理。比如對陣列進行...