swift-array-dictionary

import Foundation

func testArr() {
    //swift數組元素可以是任意的類型
    
    //1.根據類型推斷定義一個類型
    let arr = [1,2,3,4]
    print(arr)
    
    //2.定義一個數組(元素可以是任意類型)
    let arr2:Array = [1,2,3,4,3.14,2,"xiaohong"]
    print("arr2 = \(arr2)")
    
    //3.元素可以是任意類型
    //Array 後面 <>可以限制 元素類型 Any 表示任意類型
    let arr3:Array<Any> = [1,2,3,4,3.14,2,"xiaohong"]
    print("arr3 = \(arr3)")
    
    //4.限制元素是Int 類型 不能是其他類型
    let arr4:Array<Int> = [1,2,3,4]
    print("arr4 = \(arr4)")
    
    //5.限制元素是Int 類型還可以這樣寫
    var arr5:[Int] = [1,2,3,4]
    print("arr5 = \(arr5)")
    
    //下面操作數組
    //1.獲取數組元素  arr5[0] 訪問索引0 對應的元素
    print("arr5_0 = \(arr5[0])")//不能越界
    //2.追加元素
    arr5.append(5)
    print("arr5 = \(arr5)")
    
    //3.插入元素
    arr5.insert(100, atIndex: 1)
    print("arr5 = \(arr5)")
    
    //4.刪除指定的
    arr5.removeAtIndex(0)
    print("arr5 = \(arr5)")
    
}

testArr()

func testDict() {
    //1.定義字典
    //元素是鍵值對 鍵值對中的key 和value 可以是任意的類型
    //key:value
    
    //1.1
    let dict1 = [1:2,11:22]
    print(dict1)
    //1.2
    let dict2 = ["one":1,"two":2]
    print(dict2)
    //1.3限制鍵值對類型
    let dict3:Dictionary<String,Int> = ["one":1,"two":2]
    print(dict3)
    
    var dict4:[String:Int] = ["one":1,"two":2]
    print(dict4)
    
    
// 訪問字典元素的值 是可選值
    
    //操作字典
    //1.獲取字典元素個數
    print(dict4.count)
    //2.通過key 獲取 值  dict4["one"]是一個可選值類型 得到裏面的值需要解包
    let num = dict4["one"]!
    print("num = \(num)")//解包
    //3.修改值
    dict4["one"] = 11
    print(dict4)
    //通過方法改值
    dict4.updateValue(22, forKey: "two")
    print(dict4)
    //4.增加鍵值對
    //updateValue如果key字典中不存在 那麼表示增加 存在表示修改
    dict4.updateValue(33, forKey: "three")
    print(dict4)
    //5.刪除鍵值對
    dict4.removeValueForKey("one")
    print(dict4)
    
    //遍歷字典
    
    for x in dict4 {
        //x 就是一個元組類型 裏面放的是字典的鍵值對
        print(x)
    }
    //快速枚舉字典 得到一個元組
    for (key,value) in dict4 {
        //x 就是一個元組類型 裏面放的是字典的鍵值對
        print("key:\(key) value:\(value)")
    }
    //遍歷所有的key
    for key in dict4.keys {
        print(key)
    }
}
testDict()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章