Kurs
Hinweis: Dieses Tutorial setzt die Scala-Tutorialreihe fort. Wenn du Beginners Guide to Scala und IF ELSE in Scala noch nicht gelesen hast, hol das am besten nach.
Einführung
Ein Operator ist ein Symbol oder eine Funktion, die eine Operation angibt, die mit einem oder mehreren Operanden ausgeführt wird. Es gibt viele verschiedene Arten von Operatoren, und ein Operand lässt sich als Variable verstehen. Operatoren sind die Grundlage jeder Programmiersprache. Sie ermöglichen es uns, vielfältige Operationen auf Operanden auszuführen. Operatoren teilen dem Compiler mit, dass er beispielsweise mathematische (arithmetische), logische, Zuweisungs-Operationen usw. ausführen soll und liefern schließlich ein Ergebnis.
In vielen Programmiersprachen, so auch in Scala, gibt es unterschiedliche Operatorarten, darunter:
- Relationale Operatoren
- Arithmetische Operatoren
- Zuweisungsoperatoren
- Logische Operatoren
- Bitweise Operatoren
Du lernst die oben genannten Operatoren sowohl konzeptionell als auch mit Codebeispielen kennen.
Relationale Operatoren
Relationale Operatoren werden vor allem verwendet, um zwei oder mehr Variablen miteinander zu vergleichen. Wenn du das Tutorial IF ELSE in Scala gelesen hast, hast du gesehen, dass in den IF ELSE-Bedingungen relationale Operatoren genutzt werden.
Diese Operatoren liefern einen booleschen Wert, also True oder False.
Im Folgenden siehst du die Symbole relationaler Operatoren, mit denen du Variablen vergleichst (Quelle: Operators in Scala):
-
Equal To (==):Prüft, ob zwei Variablen bzw. Operanden gleich sind. Wenn ja, liefert der Ausdruck true, andernfalls false. -
Not Equal To (!=):Das Gegenstück zuequal to, also das boolesche Komplement. Prüft, ob zwei Operanden ungleich sind. Wenn ja, liefert der Ausdruck true, sonst false. -
Greater Than (>):Prüft, ob der erste Operand größer ist als der zweite. Wenn ja, true, sonst false. -
Less Than (<):Das Gegenstück zugreater than. Prüft, ob der erste Operand kleiner ist als der zweite. Wenn ja, true, sonst false. -
Greater Than Or Equal To (>=):Prüft, ob der erste Operand größer oder gleich dem zweiten ist. Wenn ja, true, andernfalls false. -
Less Than Or Equal To (<=):Das Gegenstück zugreater than or equal to. Prüft, ob der erste Operand kleiner oder gleich dem zweiten ist. Wenn ja, true, sonst false.
Schauen wir uns relationale Operatoren jetzt mit einem Codebeispiel an.

Um den obigen Code auszuführen, gib einfach scala relation_op.scala ein. Du solltest dann eine Ausgabe wie unten sehen.

Als Nächstes lernst du die logischen Operatoren kennen.
Logische Operatoren
Sie werden vor allem in Bedingungen wie IF ELSE oder in while-Schleifen eingesetzt. Sie verbinden zwei oder mehr Bedingungen oder negieren das Ergebnis der betrachteten Bedingung. (Quelle: Operators in Scala)
-
Logisches UND:Liefert true, wenn beide Bedingungen erfüllt sind. Andernfalls false. Das Wort „and“ fungiert als Platzhalter für den Operator &&. -
Logisches ODER:Liefert true, wenn eine (oder beide) Bedingungen erfüllt ist. Andernfalls false. Das Wort „or“ entspricht dem Operator ||. -
Logisches NICHT:Liefert true, wenn die betrachtete Bedingung nicht erfüllt ist. Andernfalls false. Das Wort „not“ wirkt wie der Operator !.


Arithmetische (mathematische) Operatoren
Wie der Name sagt, werden arithmetische Operatoren verwendet, um mathematische Operationen zwischen Operanden auszuführen.
Die in Scala am häufigsten verwendeten arithmetischen Operatoren sind (Quelle: Operators in Scala):
-
Addition:Addiert $(+)$ zwei Variablen/Operanden. -
Subtraktion:Subtrahiert $(-)$ zwei Operanden. -
Multiplikation:Multipliziert $(\times)$ zwei Operanden. -
Division:Teilt $(/)$ den ersten Operanden durch den zweiten. -
Potenz:Liefert die Potenz der Operanden, also wenn ein Operand mit der Potenz des zweiten Operanden erhöht wird $(x^y)$ bzw. $(x**y)$. -
Modulus:Beim Teilen des ersten Operanden durch den zweiten ist der Rest der Division der Modulus (%).
Schreiben wir schnell ein kleines Codebeispiel und analysieren das Ergebnis.
In diesem Beispiel verwendest du Listen, statt nur einzelne Variablen zu definieren. Eine List kann – anders als eine einzelne Variable – eine n-fache Anzahl an Werten mit verschiedenen Datentypen aufnehmen, sie repräsentiert in Scala eine verkettete Liste und ist unveränderlich. Du führst die arithmetischen Operationen auf zwei Listen statt auf zwei Variablen aus.


Zuweisungsoperatoren
Um einer Variable einen Wert zuzuweisen, werden Zuweisungsoperatoren verwendet. Dabei steht der rechte Operand für den Wert, während der linke Operand in der Regel die Variable ist, der der Wert zugewiesen wird. Der Wert kann verschiedene Datentypen haben, z. B. int, float usw. Der Datentyp von Variable und Wert muss übereinstimmen, sonst meldet der Compiler einen Fehler. (Quelle: Operators in Scala)
-
Einfache Zuweisung:Weist der Variablen einen Wert zu $(=)$. -
Addieren und zuweisen:Addiert den linken mit dem rechten Operanden und weist das Ergebnis der Variablen links zu $(+=)$. -
Subtrahieren und zuweisen:Entspricht dem Prinzip vonAddieren und zuweisen, nur mit Subtraktion. Das Ergebnis wird der Variablen links zugewiesen $(-=)$. -
Multiplizieren und zuweisen:Multipliziert linken und rechten Operanden und weist das Ergebnis der Variablen links zu $(\times =)$. -
Dividieren und zuweisen:Teilt linken durch rechten Operanden und weist das Ergebnis der Variablen links zu $(/=)$.
Analog dazu gibt es viele weitere Zuweisungsoperatoren. Zum Schluss schreiben wir noch etwas Code, um das Verhalten im Programm zu sehen.


Fazit
Glückwunsch, du hast dieses Scala-Tutorial abgeschlossen.
Wenn du die beiden vorherigen Tutorials gelesen hast, hast du nun drei verschiedene Themen in Scala behandelt. Eine sinnvolle Übung ist es, die Kompetenzen aus allen drei Lektionen zu kombinieren und ein Scala-Programm von Grund auf zu schreiben. Das stärkt nicht nur dein Selbstvertrauen, sondern macht es dir auch leichter, fortgeschrittenen Scala-Themen zu folgen.
Referenzen:
Stell gern Fragen zu diesem Tutorial im Kommentarbereich unten.