Swift 2 lernen

Einfache Operatoren

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In Swift stehen natürlich auch einfache Operatoren für Berechnungen sowie das Inkrementieren oder Dekrementieren zur Verfügung.
07:30

Transkript

Natürlich bietet Swift auch eine Reihe von Operatoren an, und die einfachsten schauen wir uns hier in diesem Video an. Dazu machen wir uns einen neuen Playground, "Operatoren", und können dann gleich mit den einfachen Operatoren arbeiten. Ja, was sind Operatoren? Das ist eben das, was wir erwarten, um Rechnungen machen zu können, das heißt, wir wollen so etwas machen wie Arithmetik, und da haben wir dann natürlich solche Sachen wie eine Addition oder eine Subtraktion, oder die Multiplikation oder die Division, und damit wollen wir dann ein bisschen arbeiten. Machen wir uns doch eine Zahl a als Double, und eine Variable b als Double, und gerne auch eine Variable c noch als Double, und dadurch, dass wir hier [Punkt Null] hinten anfügen, gilt das Ganze ja als Double Type Inference, haben wir ja auch, dann müssen wir den Typ hier nicht angeben. Ja, wie lässt sich das Ganze jetzt berechnen? Indem wir sagen, wir haben hier ein Ergebnis, und das soll jetzt sein a + b, Wir können auch sagen, das Ergebnis, nachdem wir es dann haben, darf es geändert werden, ist eben b * c, und natürlich lässt sich das Ganze immer so weiterspielen, dass wir die einzelnen Operatoren gerne hier einmal betrachten. Also, das ist sehr sehr einfach, wir haben immer eine linke Seite vom Zuweisungsoperator, auch das ist ein Operator, und eine rechte Seite, und immer das Ergebnis hier, der rechten Seite, wird durch den Zuweisungsoperator an die linke Seite überführt, das ist eigentlich nichts Besonderes, so funktionieren Programmiersprachen, und auch Swift geht genau diesen Weg. Wenn wir uns jetzt aber etwas anschauen, was für den Programmier-Einsteiger durchaus interessant ist, und wir haben so etwas wie eine Variable punkte, und das haben wir hier als Integer definiert, und wir starten mal mit 10 Punkten, dann braucht man das sehr sehr häufig beim Programmieren, dass man sagt: punkte = punkte + 1, wir wollen also den Wert um Einen erhöhen, aus der 10 wird eine 11 gemacht, und weil das eben so häufig vorkommt, haben wir auch die Möglichkeit, zu inkrementieren und zu dekrementieren in einem Spezial-Operator, und dann dürfen wir also hier angeben auch punkte++, erhöht den Wert um eins, und punkte-- verringert den Wert um eins, ja, und jetzt ist es sicherlich auch aufgefallen hier, Moment mal, wir hatten gesagt, punkte = punkte + 1, sprich, wir waren auf 11, und dann hab ich gesagt, punkte++ würde doch diesen Wert erhöhen, und wir sehen immer noch 11, ja - Wenn wir nach dem punkte++ uns aber den Punktestand einmal anschauen, dann sehen wir tatsächlich, dass er 12 ist, denn das ist das Interessante, wenn dieser Inkrement-Operator am Ende steht, also ein sogenannter Postfix, dann wir erst noch einmal der alte Wert herangezogen, in dem Fall hier für die Ausgabe, und danach wird er um 1 erhöht, haben wir aber den Operator vorne stehen, also einen sogenannten Prefix, dann wird auch erst der Wert erhöht, und dann ausgegeben, das heißt, es spielt eine ganz entscheidende Rolle, wenn ich zum Beispiel in einer Abfrage, in einer Schleife, etwas eine bestimmte Anzahl lang tun möchte, und addiere dann immer einen Wert darauf, spielt es wirklich eine Rolle, vergleiche ich noch gegen den alten Wert, und addiere dann, oder addiere ich erst, und vergleiche dann. Also, Prefix und Postfix, ganz interessante Geschichten, und dementsprechend kann ich auch hier von den Punkten wieder einen abziehen. Immer nur den Wert einen herauf oder einen herunter zählen, durch diese praktischen Dekrement- und Inkrement-Operatoren, die auch hier Swift wie viele andere C-basierten Sprachen zur Verfügung stellt. Entgegen vielen anderen Programmiersprachen bietet auch Swift mit den Operatoren etwas Neues, denn Zuweisung zu Variablen wird automatisch auf einen sogenannten "Overflow", also auf einen Überlauf geprüft. Und das ist eine sehr interessante Sache, die wir uns hier einmal anschauen möchten, wir machen uns eine Variable i, und die soll sein vom Typ Unsigned Integer, aber nur 8 Bit, das heißt, wir haben hier die Möglichkeit, die Werte von 0 bis 255 in unserer Variablen i zu speichern. Würde ich jetzt auf i noch mal 100 hinzu addieren wollen, dann hätten wir also 300, damit einen Überlauf, und das würde dann tatsächlich zu einer exception führen, und genau, um das zu verhindern, gibt es eben spezielle Operatoren, die mit einem kaufmännischen & für unsere Grundrechenarten zur Verfügung gestellt werden, so dass ich also sagen kann, i = i &+ 100, und in dem Moment sehen wir, aha, das ist ja interessant, wir haben also diesen Überlauf hier ausgenutzt, aber unser Programm hat funktioniert, wir haben ganz bewusst in Kauf genommen, dass wir unsere Speichergröße quasi überfordern, wir gehen also auf ein falsches Ergebnis, aber das haben wir hier ganz bewusst machen wollen, und haben gesagt, ja, ich möchte auch den Overflow hier ganz bewusst übersteuern, damit das Ganze funktioniert. Hätten wir das nicht gemacht, sähen wir Folgendes, dass eben das Ergebnis hier nicht mehr ausgegeben werden kann, und auch unser Playground kommt hier ins Schwitzen, und wird also sich auch gleich abmelden. Es geht eben einfach nicht in Swift, denn jede Standardoperation wird auf Over- und Underflow tatsächlich geprüft, und dazu die Spezial-Operatoren, ein kaufmännisches &, wenn wir sagen, ich will auf jeden Fall addieren, ich nehme auch in Kauf, dass wir hier die Grenzen unserer Genauigkeit sprengen, manchmal möchte man das, andere Sprachen prüfen nämlich nicht auf so einen Overflow-Fall, Swift macht es, und hier ist das Werkzeug, wie man dann trotzdem das Ganze überlisten kann, wenn man's denn braucht.

Swift 2 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!