Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Swift lernen

Datentypen müssen manuell konvertiert werden

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Swift führt keine automatische Konvertierung von einem Datentyp in einen anderen durch. Der Entwickler muss ganz klar angeben, welcher Wert in einer Berechnung wie zu handhaben ist, damit das Ergebnis seinen Wünschen entspricht.
04:33

Transkript

In diesem Video betrachten wir die Konvertierung von Datentypen, die nämlich Swift im Vergleich zu vielen anderen Sprachen wie beispielsweise Objective-C nicht automatisch durchführt, und das auch aus gutem Grund. Starten wir einen neuen Playground, und nennen unser Projekt: "Datentypen konvertieren" und legen es ganz normal im System ab, und machen uns eine einfache Beispielrechnung auf, zum Beispiel, dass wir sagen, wir haben eine Anzahl, wir würden gerne 30 Mal etwas verkaufen, zu einem Preis von 25 Euro, und wir hätten dann also eine Summe, das wäre Anzahl mal Preis. Ja, das ist dann nicht weiter kompliziert, und wir sehen, aha, 30 mal 25, das wird dann wohl im Endeffekt eine Summe von 750 ergeben. Nun ist es aber so, dass der Preis sicherlich selten nur auf ganze Euros geht, wir haben doch immer so etwas wie 24,95, und an der Stelle damit dann auch ein Problem. Denn auf einmal können wir unsere Rechnung nicht mehr durchführen, und wenn wir uns hier die Fehlermeldung anklicken, ja, wow, cannot invoke und @lvalue Int und @lvalue Double), mh, aus dieser Fehlermeldung wird man jetzt als Einsteiger sicher nicht so ganz schnell sehr schlau, aber irgendwas ist hier mit Int und Double, und das kann jetzt nicht miteinander multipliziert werden, das heißt, Swift kann hier nicht entscheiden, was soll denn gemacht werden? Soll jetzt der Preis vielleicht doch zu einem Integer konvertiert werden, und wir würden einfach diesen Nachkomma-Teil ignorieren, verlieren natürlich Präzision, und der Kunde würde sich freuen, oder wollen wir die Anzahl zu einem Double machen, und vielleicht dann mit dortigen Problemen rechnen, man muss sich hier als Entwickler für irgendeinen Weg entscheiden. Swift führt keine automatische Datenkonvertierung durch, wo Gefahr besteht, dass auch Präzision beziehungsweise Information verloren geht. Auch eine Konvertierung von Double nach Float wird nicht automatisch vorgenommen, wir müssen hier als Entwickler eingreifen. Nun, das Ganze ist sehr einfach, es gibt dafür eben die Schlüsselwörter, wie die Variablentypen heißen, Int, Double, Float, String, und auch Bool natürlich, und so kann ich sagen, ja, ich werde dann innerhalb dieser Rechnung so tun, als ob die Anzahl auch ein Double-Wert wäre. Ja, Möglichkeit eins, ich sage hier oben 30.0, dann geht die Rechnung wieder auf, aber das wäre ja dann an sich komisch, ich kann ja nicht dreißig einhalb Stück von irgendwas verkaufen, ja, also wollen wir den Wert 'Anzahl' schon als Integer haben, aber für die Berechnung sage ich dann, na ja, solange ich das hier nur berechne, soll er bitte die Anzahl als Double behandeln, weil ich dann ja ein Double mit einem Double multiplizieren kann, und ein sauberes Ergebnis bekomme. Also, "Data Type conversion", Faustregel: Swift macht hier nichts automatisch. Ist im ersten Moment etwas ungewohnt, gerade wenn man aus Objective-C kommt, Doubles und Floats innerhalb vom UI-System bisher nie großartig unterschieden hat, auf einmal muss man es unterscheiden, aber es ist ja wirklich aus einem guten Grund, wir wollen ja nicht, dass Präzision beziehungsweise Information verloren geht, also müssen wir hier angeben, was sich wie zu verhalten hat, damit nur Gleiches mit Gleichem auch sauber berechnet werden kann. Swift macht es nicht automatisch.

Swift lernen

Erkunden Sie die wichtigsten Sprachmerkmale von Swift und ihre modernen Eigenschaften wie Generics, Extensions, Tupels und Optionals.

4 Std. 2 min (30 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!