How are Int and String accepted as AnyHashable?

前端 未结 3 1126
面向向阳花
面向向阳花 2021-01-05 01:18

How come I can do this?

    var dict = [AnyHashable : Int]()
    dict[NSObject()] = 1
    dict[\"\"] = 2

This implies that NSObject

3条回答
  •  自闭症患者
    2021-01-05 02:17

    class SomeClass: NSObject {
       var something: String = "something"
    }
    
    var dict = [AnyHashable: Int]()
    var object = SomeClass()
    
    dict = ["a": 1, object: 2]
    
    print(dict["a"]) // result: Optional(1)
    print(dict[object]) // result: Optional(2)
    
    var object2 = SomeClass()
    dict[object2] = 3
    print(dict[object2]) // result: Optional(3)
    

提交回复
热议问题