swift NSDictionary(字典)

                                   2、NSDictionary(字典)


        //创建空字典

       let emptyDictionary = Dictionary<String, Float>()

        

        //        字典被定义为 Dictionary<String, Int> ,这意味着这个字典的键是 String类型和值是Int类型

       var airports: Dictionary<String,Int> = ["1":3, "2": 4]

       println(airports)

        

        //       和数组一样,构造字典就也可以不用把类型定义清楚(Swift 的类型推断)

       var airportsDic = ["3":1,"4":6]

       println(airportsDic)

        //        使用下标语法来改变 key 对应的值:

       if let airportname = airportsDic["3"]

        {

           println("\(airportname)")

        }

        

        //获得key对应的值

       let airstr = airportsDic["4"]

       println("\(airstr)")

        

        

        //删除并获得删除key对应的值

       if let oldValue = airportsDic.removeValueForKey("3") {

           println("this is \(oldValue).")

        }

        

//        使用 for-in循环来遍历字典中的键值对。字典中的每一个元素都由(key, value)组成,可以使用临时常量或者变量来分解他们:

       for (airportkey, airportvalue) in airports {

           println("\(airportkey):\(airportvalue)")

        }

        

//        通过访问字典的 keys或者 values 属性(都是可遍历的集合)遍历字典的键或值:

       for airportkey in airports.keys {

           println("airportvalue code:\(airportkey)")

        }

        

       for airportvalue in airports.values {

           println("Airport name:\(airportvalue)")

        }

        

//        如果需要使用字典的键集合或者值集合来作为 Array构造器的参数 ,可以直接使用 keys或者 values 属性:

       let airportKeyArray = Array(airports.keys)

        

       let airportKeyValuesArray = Array(airports.values)

       

//        类似于数组,如果上下文中已经提供了类型信息,使用 [:](中括号中放一个冒号)创建一个字典,那么它的类型是明确了的:

       var namesDic = Dictionary<Int,String>()

        namesDic[16] ="sixteen"

        namesDic = [:]

你可能感兴趣的:(swift,key,value,NSDictionary,字典)