Latest web development tutorials

Swift-Wörterbuch

Eine Sammlung des gleichen Typs zum Speichern von Daten Wörterbuch Swift Störung verwendet, erzwingt Swift Wörterbuchtyp Erfassungselement, wenn eine andere Art von Fehler auftritt.

Swift-Wörterbuch für jeden Wert (Wert) ist eindeutiger Schlüssel (key), den Schlüssel-ID als die Lexikondatenwert zugeordnet.

Und eine Reihe von verschiedenen Datenelemente, Datenwörterbuchobjekt, und es gibt keine spezielle Reihenfolge. Wir müssen die Wörterbuch-ID (Schlüssel) zu verwenden, auf die Daten zuzugreifen, und wir verwenden diese Vorgehensweise in hohem Maße die lexikalische Bedeutung der gleichen Verfahren, die in der realen Welt.

Swift Wörterbuch-Taste auf der Typ keine Einschränkungen können ganze Zahl oder eine Zeichenfolge sein, sondern muss eindeutig sein.

Wenn Sie ein Wörterbuch zu erstellen, und einer Variablen zugewiesen wird das Wörterbuch erstellt, geändert werden kann. Dies bedeutet, dass, nachdem Sie das Wörterbuch erstellen, können Sie hinzufügen, löschen, ändern, ändern Sie die Möglichkeit, das Wörterbuch-Projekt. Wenn ein Wörterbuch auf eine Konstante zugewiesen ist, können Sie das Wörterbuch nicht ändern, und das Wörterbuch Größe und Inhalt nicht geändert werden kann.


Neues Wörterbuch

Wir können die folgende Syntax verwenden, um eine bestimmte Art von leeren Wörterbuch zu erstellen:

var someDict =  [KeyType: ValueType]()

Im Folgenden wird ein leeres Wörterbuch erstellen, geben Sie den Schlüssel für Int, String-Typ-Wert ist eine einfache Syntax:

var someDict = [Int: String]()

Das folgende ist eine Wörterbuch-Instanz zu erstellen:

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

Zugang Wörterbuch

Wir können Elemente des Arrays zugreifen entsprechend dem Index-Wörterbuch, die Syntax ist wie folgt:

var someVar = someDict[key]

Durch die folgenden Beispiele können wir lernen, wie zu erstellen, zu initialisieren, Zugang Wörterbücher:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

var someVar = someDict[1]

print( "key = 1 的值为 \(someVar)" )
print( "key = 2 的值为 \(someDict[2])" )
print( "key = 3 的值为 \(someDict[3])" )

Die obige Programmausführung Ausgabe ist:

key = 1 的值为 Optional("One")
key = 2 的值为 Optional("Two")
key = 3 的值为 Optional("Three")

Ändern eines Wörterbuch

Wir könnenUpdate (forKey verwenden :)hinzufügen oder den Inhalt des Wörterbuchs zu aktualisieren. Wenn der Schlüssel nicht vorhanden ist, fügen Sie den Wert, wenn es den Schlüssel entsprechende Wert zu ändern. Update (_: forKey :) Optional Methode gibt einen Wert. Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

var oldVal = someDict.updateValue("One 新的值", forKey: 1)

var someVar = someDict[1]

print( "key = 1 旧的值 \(oldVal)" )
print( "key = 1 的值为 \(someVar)" )
print( "key = 2 的值为 \(someDict[2])" )
print( "key = 3 的值为 \(someDict[3])" )

Die obige Programmausführung Ausgabe ist:

key = 1 旧的值 Optional("One")
key = 1 的值为 Optional("One 新的值")
key = 2 的值为 Optional("Two")
key = 3 的值为 Optional("Three")

Sie können auch den Wert eines Wörterbuchs ändern, indem Sie den Schlüssel angibt, wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

var oldVal = someDict[1]
someDict[1] = "One 新的值"
var someVar = someDict[1]

print( "key = 1 旧的值 \(oldVal)" )
print( "key = 1 的值为 \(someVar)" )
print( "key = 2 的值为 \(someDict[2])" )
print( "key = 3 的值为 \(someDict[3])" )

Die obige Programmausführung Ausgabe ist:

key = 1 旧的值 Optional("One")
key = 1 的值为 Optional("One 新的值")
key = 2 的值为 Optional("Two")
key = 3 的值为 Optional("Three")

Entfernen Sie Schlüsselwertpaar

Wir könnenremoveValueForKey () -Methode verwenden , um die Wörterbuch Schlüssel-Wert - Paare zu entfernen.Wenn der Schlüssel vorhanden ist, gibt die Methode den entfernten Wert, wenn es keine Rückkehr Null ist. Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

var removedValue = someDict.removeValueForKey(2)

print( "key = 1 的值为 \(someDict[1])" )
print( "key = 2 的值为 \(someDict[2])" )
print( "key = 3 的值为 \(someDict[3])" )

Die obige Programmausführung Ausgabe ist:

key = 1 的值为 Optional("One")
key = 2 的值为 nil
key = 3 的值为 Optional("Three")

(- Wertschlüssel) Paare Sie können auch durch die Angabe der Schlüsselwert von Null Schlüssel-Wert zu entfernen. Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

someDict[2] = nil

print( "key = 1 的值为 \(someDict[1])" )
print( "key = 2 的值为 \(someDict[2])" )
print( "key = 3 的值为 \(someDict[3])" )

Die obige Programmausführung Ausgabe ist:

key = 1 的值为 Optional("One")
key = 2 的值为 nil
key = 3 的值为 Optional("Three")

Traversal-Wörterbuch

Wir können diefor-in - Schleife verwenden , ein Wörterbuch von Schlüssel-Wert - Paare zu iterieren.Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

for (key, value) in someDict {
   print("字典 key \(key) -  字典 value \(value)")
}

Die obige Programmausführung Ausgabe ist:

字典 key 2 -  字典 value Two
字典 key 3 -  字典 value Three
字典 key 1 -  字典 value One

Wir können auch enumerate () -Methode zum Wörterbuch Traversal, gibt den Index des Wörterbuchs und der (Schlüssel, Wert) -Paare, Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

for (key, value) in someDict.enumerate() {
    print("字典 key \(key) -  字典 (key, value) 对 \(value)")
}

Die obige Programmausführung Ausgabe ist:

字典 key 0 -  字典 (key, value) 对 (2, "Two")
字典 key 1 -  字典 (key, value) 对 (3, "Three")
字典 key 2 -  字典 (key, value) 对 (1, "One")

Wörterbuch in ein Array

Sie können die Tasten der auf einem separaten Array-Wörterbuch (Schlüssel-Wert) Paare und umgewandelt extrahieren. Beispiele sind wie folgt:

import Cocoa

var someDict:[Int:String] = [1:"One", 2:"Two", 3:"Three"]

let dictKeys = [Int](someDict.keys)
let dictValues = [String](someDict.values)

print("输出字典的键(key)")

for (key) in dictKeys {
    print("\(key)")
}

print("输出字典的值(value)")

for (value) in dictValues {
    print("\(value)")
}

Die obige Programmausführung Ausgabe ist:

输出字典的键(key)
2
3
1
输出字典的值(value)
Two
Three
One

Count-Eigenschaft

Wir können die Nur - Lese-Attributcount die Anzahl der Schlüssel-Wert - Paar - Wörterbuch zu berechnen:

import Cocoa

var someDict1:[Int:String] = [1:"One", 2:"Two", 3:"Three"]
var someDict2:[Int:String] = [4:"Four", 5:"Five"]

print("someDict1 含有 \(someDict1.count) 个键值对")
print("someDict2 含有 \(someDict2.count) 个键值对")

Die obige Programmausführung Ausgabe ist:

someDict1 含有 3 个键值对
someDict2 含有 2 个键值对

isEmpty Eigenschaft

Y können wirisEmpty schreibgeschützt , um zu bestimmen , ob das Attribut Wörterbuch leer ist, gibt einen Booleschen Wert:

import Cocoa

var someDict1:[Int:String] = [1:"One", 2:"Two", 3:"Three"]
var someDict2:[Int:String] = [4:"Four", 5:"Five"]
var someDict3:[Int:String] = [Int:String]()

print("someDict1 = \(someDict1.isEmpty)")
print("someDict2 = \(someDict2.isEmpty)")
print("someDict3 = \(someDict3.isEmpty)")

Die obige Programmausführung Ausgabe ist:

someDict1 = false
someDict2 = false
someDict3 = true