2017-04-11 12 views
-7

私はこのような辞書を持っている:別個の辞書キーを見つけるには?

var dictionary: [String: String] = ["one": "Value 1", "two": "value2", "two": "value3", "one": "value4"] 

私はスウィフト3.0の辞書から個別の鍵を見つけることができますどのように?

+8

スウィフト辞書はキーが重複していることができません発生します。それらのうちの1つだけが保持されます。 – kennytm

+1

https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/CollectionTypes.html#//apple_ref/doc/uid/TP40014097-CH8-ID113:* "...各値は関連付けられています**ユニークな**キーで、... "* –

+0

ありがとう。 kennytm – user3440589

答えて

1

辞書の主な目的は、常に1つのキーのみを持つことです。つまり、そのキーは常にユニークです。

これは、キーの値を検索するために(最高でも)O(1)を使用して辞書内で非常に迅速に検索します。

辞書でキーの複数のコピーが許可される場合、このクイック検索は不可能です。あなたが辞書に "A"というキーの値を尋ねると、それが戻ってくる魔法使いを頼むので、それはまた混乱するでしょう?

それはすべての言語で辞書が常に1つのキーしかないことを保証する理由です。

同じキーの値を設定すると、以前の値が上書きされ、同じキーの新しいキーは挿入されません。


追加

あなたは運動場であなたのコードを入れた場合は、エラー

fatal error: Dictionary literal contains duplicate keys 
関連する問題