次のように定義された単純な辞書があります:
var dict : NSDictionary = [ 1 : "abc", 2 : "cde"]
ここで、この辞書に要素を追加したいと思います。3 : "efg"
3 : "efg"
この既存の辞書に追加するにはどうすればよいですか?
ベストアンサー1
を使用していますNSDictionary
。何らかの理由で明示的にその型にする必要がない限り、Swift 辞書を使用することをお勧めします。
と はシームレスにブリッジされるNSDictionary
ため、追加の作業なしでSwift 辞書を任意の関数に渡すことができます。ネイティブ Swift 方式の利点は、辞書がジェネリック型を使用するため、 をキーとして 、 を値として定義すると、異なる型のキーと値を誤って使用できないことです (コンパイラがユーザーに代わって型をチェックします)。Dictionary<>
NSDictionary
Int
String
コードから判断すると、辞書では をInt
キーとして、 をString
値として使用しています。インスタンスを作成し、後で項目を追加するには、次のコードを使用できます。
var dict = [1: "abc", 2: "cde"] // dict is of type Dictionary<Int, String>
dict[3] = "efg"
後でそれを型の変数に割り当てる必要がある場合はNSDictionary
、明示的にキャストするだけです。
let nsDict = dict as! NSDictionary
また、前述したように、 を期待する関数に渡す場合はNSDictionary
、キャストや変換を行わずにそのまま渡します。