Kapitel 2: Grundlagen / 2.1 Variablen und Konstanten / 2.1.3 Datentypen

Variablen und Konstanten bestehen also aus einem Namen und einem Wert. Und der Wert ist immer von einem bestimmten Datentyp. In den Beispielen hatten wir bereits einen Wert "Benjamin" vom Typ String, einen Wert 7 vom Typ Integer, einen Wert 3.14159 vom Typ Double und einen Wert true von Typ Boolean.

Der Datentyp einer Variablen oder Konstanten wird während der Deklaration festgelegt. Dies geschieht entweder explizit durch Annotation des gewünschten Typs oder implizit dadurch, dass bei der Deklaraton ein Wert eines bestimmten Typs zugewiesen wird. Diese zweite Variante heißt Type Inference und wurde bei unseren bisherigen Beispielen verwendet.

Eine genauere Beschreibung von Annotation und Type Inference folgt in den nächsten beiden Kapiteln. Und später folgt auch noch eine detaillierte Aufstellung aller verwendbarer Datentypen.

Hier soll erst einmal festgehalten werden, dass der Typ einer Variablen – anders als ihr Wert – später nicht mehr geändert werden kann

Folgendes Beispiel führt daher zu einem Fehler:

var nameDesSchülers = "Benjamin"
nameDesSchülers = 5

Der Wert "Benjamin" ist eine Zeichenkette und damit vom Typ String. Wird der Variablen nameDesSchülers nun dieser Wert zugewiesen, ist sie fortan ebenfalls vom Typ String. Der Wert 5 ist eine Zahl ohne Nachkommastellen und damit von Typ Int. Einer Variablen vom Typ String darf aber kein Wert vom Typ Int zugewiesen werden. Daher kommt es zu einer Fehlermeldung:

Cannot convert the expression’s type ‚()‘ to type ‚String‘

Fehlermeldungen sind oft kryptisch, in diesem Fall sagt sie Folgendes: Ich (der Compiler) kann den Ausdruck vom Typ ‚()‘ (gemeint ist hier der nicht benannte Typ von 5) nicht in einen ‚String‘ konvertieren.

Die Tatsache, dass Verletzungen des Datentyps erkannt werden, macht Swift zu einer typsicheren Sprache. Da diese Typprüfung bereits während der Kompilierung stattfindet (und nicht erst zur Lauftzeit des Programms) ist Swift darüber hinaus eine statisch typisierte Sprache. Beides trägt maßgeblich zur Stabilität und Fehlerfreiheit in Swift geschriebener Programme bei.

Kapitel 2.1.3: Datentypen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.