Während && und || selbsterklärend sind, schauen wir uns den !-Operator nochmal genauer an. Dieser wandelt das Ergebnis des Vergleiches in den gegenteiligen Wahrheitswert um. Im Code sieht das Ganze so aus:

Wann wird nun der Code ausgeführt?
Der Vergleich innerhalb der Bedingung besagt: „zahl1 == 5“
Wenn das Programm nun als zahl1 die „2“ zufällig auswählt, dann ist der Vergleich erst einmal falsch (false). Aber durch den !-Operator wird dieser Wert ins Gegenteil gewandelt. Aus falsch (false) wird wahr (true) und der Code wird ausgeführt.
Als Satz geschrieben: Wenn nicht zahl1 gleich 5 ist, dann führe den nachfolgenden Code aus.
Als Ergänzung soll hier kurz die Klarstellung dienen, dass das obige Beispiel lediglich zur Darstellung des !-Operators dient.
Ansonsten würde für diese Abfrage nämlich eine andere Bedingung wesentlich einfacher sein und verwendet:
if(zahl1 != 5)
Des Weiteren können, sofern der anschließende Code nur eine Anweisung beinhaltet, die {}-Klammern weggelassenwerden. Beispiel:
Aber was ist, wenn Du vorhast, dass zwei unterschiedliche Codes, je nach Ergebnis der Bedingung, ausgeführt werden sollen? Beispielsweise Code A wenn die zufällige Zahl tatsächlich 5 beträgt und Code B bei jeder anderen Zahl.
Hier kommt das else -Schlüsselwort ins Spiel.
else = sonst
Du kannst also folgendes sagen:
Wenn zahl1 gleich fünf, dann führe den Code A aus, sonst führe Code B aus. Im Code sieht es dann so aus:
Dabei ist das if und else immer eine Einheit. Das else -Schlüsselwort steht immer direkt hinter dem if -Codeblock. Allein funktioniert die else -Anweisung nicht.
Noch mehr Möglichkeiten zum Vergleichen
Als letzte Variante möchtest Du einen Code A ausführen, wenn zahl1 gleich 5 ist, sonsteinen Code B ausführen, wenn zahl1 gleich 3 ist und sonsteinen Code C bei jedem anderen Wert. Hierzu fügst Du ganz einfach eine weitere if -Anweisung hinter dem else ein:

Nicht alles wird überprüft
Beim Ausführen des Programms wird der Code von oben nach unten durchlaufen. Wenn nun bereits die Anweisung „zahl1 == 5“ wahr (true) ist und der Code A ausgeführt wurde, werden alle anderen Abfragen übersprungen.
Eine andere Möglichkeit die Kontrolle zu übernehmen, wann ein Code ausgeführt werden soll und wann nicht, kann über die sogenannte switch -Anweisung erfolgen. Während bei einer if -Anweisung eine Bedingung erfüllt sein muss, um dass der Code ausgeführt wird, wird bei einer switch -Anweisung der Wert einer Variablen verglichen. Aufbau der switch -Anweisung im Code:
Was passiert hier: a) Es wird eine Variable mit dem Typ int und dem Namen zahl1 angelegt. b) zahl1 wird eine Zufallszahl (1, 2, 3, 4, 5 oder 6) zugewiesen. c) Die switch -Anweisung wird mit dem Schlüsselwort switch eingeleitet. d) Hinter switch nennst Du in den ()-Klammern die Variable, die überprüft werden soll, hier: zahl1 . e) Nun kann innerhalb von den {}-Klammern die Variable überprüft werden. f) Die Abfrage erfolgt mit dem Schlüsselwort case und einem dahinter festgelegten Wert, der mit zahl1 verglichen wird. Beispiel bei case 1 : Im Falle, dass zahl1 gleich 1 ist, führe den Code aus. g) Nach dem Ausführen des ausgewählten Codes wird die switch-Anweisung mit dem Schlüsselwort break beendet.
Mit dem Schlüsselwort default kannst Du innerhalb der switch -Anweisung einen Code hinzufügen, der ausgeführt werden soll, wenn keiner der vorgenannten Fälle ( case ) passt. Im Beispiel wird also der Code ausgeführt, wenn zahl1 gleich 3 oder 4 ist. In diesem Beispiel prüfst Du einen Wert der Variable int auf dessen Inhalt. Ebenso können wir eine Variable mit anderen Datentypen verwenden, beispielsweise string oder float . Auch der Datentyp bool ist möglich. Allerdings hättest Du dann maximal zwei „case“ ( true und false ). Hier ist die if -Anweisung oftmals sinnvoller.
Arrays – einfache Datenstrukturen
Bevor eine Erklärung über das Array kommt, stelle Dir einmal vor, Du möchtest unterschiedliche Werte eines Datentyps anlegen.
Beispielsweise möchtest Du eine Reihe von Vornamen speichern.
Das Ganze könnte im Code so aussehen:
Jetzt möchtest Du aber nicht für jeden Vornamen eine eigene Variable anlegen, sondern alle Vornamen in eine Art „Box“ packen. Da kommt das Array ins Spiel. Ein Array ist eine sogenannte „einfache Datenstruktur“. Mit diesem Begriff kann allerdings ein Anfänger nicht viel anfangen. Daher stell Dir einfach die besagte Box mit einer Sammlung von Werten innerhalb nur einer Variablen vor. Die Daten sind dabei von einemDatentyp (beispielsweise dem Datentyp string ). Auf jedes einzelne Datenelement kann dann mit dem zugehörigen Index zugegriffen werden. Aber was ist jetzt ein Index? Auch hier kannst Du es Dir einfach vorstellen.
Eine Box (Array) mit Karteikarten (Index) auf denen etwas steht (Wert)
Fangen wir mit einem Beispiel in der Code-Praxis an:
Was wird hier gemacht? a) Anlegen einer Variablen des Datentyps string mit der Benennung vornamen . b) Damit das Programm erkennt, dass Du aus der Variablen ein Array machen möchtest, fügst Du hinter dem Datentyp die []-Klammern ein. c) Die Variable wird deklariert, indem mit dem Schlüsselwort new und dem Datentyp string der Array eingeleitet wird. Innerhalb der []-Klammern kommt die Anzahl der Werte (in diesem Fall „4“), die in diesem Array gespeichert werden sollen. d) In der Start-Methode kannst Du dem Array die einzelnen Datenelemente zuweisen (Initialisierung). Hierzu schreibst Du den Namen der Variable mit dem jeweiligen Index wiederrum innerhalb von []-Klammern. Anschließend weist Du den Wert zu. Achtung: Ein Array ist immer null-basiert. Das bedeutet, die Zählung beginnt bei „0“ und nicht bei „1“!Das hier beschriebene Array ist ein „1-dimensionales Array“. Arrays können auch mehrere Dimensionen haben, allerdings kommt es am Anfang der Programmierung häufig vor, dass nur eine, bzw. zwei Dimensionen benötigt werden.
Читать дальше