1. ホーム
  2. スイフト

[解決済み】Swiftで辞書に要素を追加する方法は?

2022-04-16 17:43:54

質問

以下のようなシンプルなDictionaryがあります。

var dict : NSDictionary = [ 1 : "abc", 2 : "cde"]

では、この辞書に要素を追加してみたいと思います。 3 : "efg"

を追加するにはどうすればよいですか? 3 : "efg" をこの既存の辞書に追加することはできますか?

どのように解決するのですか?

を使用しています。 NSDictionary . 何らかの理由で明示的にその型であることが必要でない限り、Swiftの辞書を使うことをお勧めします。

を期待する関数にSwift辞書を渡すことができます。 NSDictionary は余計な作業をせずに Dictionary<>NSDictionary をシームレスに橋渡しします。Swift ネイティブの方法の利点は、辞書が汎用的な型を使用することで、それを 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 は、キャストや変換をせずにそのまま渡します。