I erstellt einen Typ alias:Ist die count-Eigenschaft von Array optional?
typealias areasOfStudyType = Array<Dictionary<String, String>>
Dann wird eine erstellt eine optionale variable:
var areasOfStudy : areasOfStudyType? = nil
ich brauche die Anzahl der Elemente des Arrays zu verwenden, um sie in einer Tabellenansicht setzen so typisiert I :
areasOfAStudy?.count
ich verstehe, dass, wenn areasOfStudy
nil
ist diese Codezeile versucht nicht den Wert der Zählung zu bekommen, weil ich m mit optionaler Verkettung. Aber wenn es nicht nil
ist, wird es eine Int
zurückgeben.
Allerdings wirft der Compiler, dass ich nicht eine optionale auszupacken und schlägt vor, dass ich ein:
(areasOfAStudy?.count)!
Warum ist areasOfAStudy?.count
ein optionales? Wenn ich an den Array-Dokumentation Referenz aussehen las ich:
Zählung
Die Anzahl der Elemente der Array speichert.Erklärung
var Zahl: Int {get}
Optional Verkettung gibt eine optionale ... –
Großartig! Sie haben auf das richtige Problem hingewiesen. Das Swift-Programmiersprachenbuch lautet: – Azul
"Um die Tatsache widerzuspiegeln, dass optionale Verkettung für einen Nullwert aufgerufen werden kann, ist das Ergebnis eines optionalen Verkettungsaufrufs immer ein optionaler Wert, selbst wenn die von Ihnen abgefragte Eigenschaft, Methode oder der Index zurückkommt ein nicht optionaler Wert " Auszug aus: Apple Inc." Die Swift-Programmiersprache (Swift 3). "iBooks. https://itun.es/ca/jEUH0.l – Azul