Implizite Typzuweisung
Der Datentyp muss nicht angegeben werden. Vor dem Variablenname definiert man nur, ob es sich um eine Konstante let oder eine Variable var handelt.
let length_box = 5 // wird zu int let hight_box = 3.5 // wird zu float let projectname = "ImageRecover" // wird zu string var number = 2 var isPressed = true // bool
Konstanten sind Variablen vorzuziehen. let area = Squar(length:5)
Explizite Typzuweisung
Nach dem Variablenname kann über : den Datentyp definiert werden.
var number: Int16 = 2 // Integer definieren let matrix:[Int16]
Nullpointer
var device: MTLDevice!; //Typ ist MTLDevice mit Nullpointer
Ausführen nur bei Objekten mit Inhalt
Sind Variablen, Funktionen oder Klassen mit ? definiert, wird der Code nur ausgeführt (bzw. ein Wert zugewiesen), wenn das Objekt einen Wert enthält.
var answer: String? // answer erhält Wert nur, wenn String Inhalt hat var error: NSError? var age: Int? // variable hat initalwert.
if answer { //answer ! nil . // do } if age { // nur wenn age einen Wert hat . // do }