Zurück   RR:Board > Computer > Programmierung & Entwicklung > Programmier Tutorials

ASP, C/C++/C#, Delphi, Java, Assembler (ASM), .NET Framework
Antwort
 
Themen-Optionen Thema durchsuchen

[Java] - [TUT] If-Abfrage
Alt 26.05.2012, 15:12   # 1
KingOfException
Beiträge: n/a
So Leute, das ist das erste Mal, dass ich ein Tutorial schreibe, deswegen seid bitte gnädig

Ziel dieses Tutorials: Grundlagen vermitteln
Themengebiete: If-Abfragen, Schleifen

Die if-Abfrage

Eine if-Abfrage ist eine Bedingung. Wenn diese Bedingung erfüllt wird, wird ein bestimmter Teil Code ausgeführt. Das heißt, dass das Programm Entscheidungen fällen kann.

Ein kleines Beispiel:

Sie wollen Fußball spielen und besitzen einen Ball. Es kann vorkommen, dass nach längerer Zeit der Ball Luft verliert und sie ihn vorher aufpumpen müssen.
Es gibt also zwei Möglichkeiten.
Entweder: Der Ball ist aufgepumpt und sie können gleich anfangen zu spielen
Oder: Sie müssen erst den Ball aufpumpen und können erst dann anfangen zu spielen.

Wir wollen jetzt ein kleines Programm schreiben, das testet, ob der Ball platt ist oder nicht.

Hier mal die Struktur des Programms:
Code:
Los | | Ball testen | | wenn aufgepumpt wenn platt | | | ball aufblasen | | SPIELEN! <--
Der 'magische' Befehl heißt 'if', 'wenn' auf Englisch.

Hinter dem 'if' kommt die Bedingung, die getestet werden soll und danach in {} das, was passieren soll, wenn die Bedingung stimmt.

Code:
if(BEDINGUNG) { ANWEISUNG }
Wenn es sich nur um einen Befehl in der Anweisung handelt, können die geschweiften Klammern ( {} ) auch ausgelassen werden.

Code:
if(BEDINGUNG) ANWEISUNG;
Um auf unser Ball-Problem zurückzukommen. Der Pseudocode sieht bisher so aus:

Code:
if(ball ist platt) { ball aufblasen; } System.out.println("LASS UNS JETZT SPIELEN!");
Der if-Bereich wird nur ausgeführt, wenn der Ball platt ist. Ist dies nicht der Fall, wird auch der Bereich in {} ausgelassen.
Die Ausgabe wird in jedem Fall ausgeführt, da sie sich nicht mehr in dem Bereich der {} befindet.

So, jetzt ist es Zeit, den Pseudocode in richtigen JAVA-kompilierbaren Code zu verwandeln.

Für den 'Status' (platt oder nicht platt) wird ein boolean verwendet.
Im folgenden Beispiel ist der Ball nicht platt, siehe Zeile 5.

Code:
class BallTester { public static void main(String[]args) { boolean platt=false; if(platt==true) { System.out.println("Der Ball ist platt"); platt=false; System.out.println("Der Ball wurde aufgepumpt"); } System.out.println("Lass uns spielen, der Ball ist aufgepumpt"); } }
Da der Ball ja nicht platt ist, wird auch nicht der if-Teil ausgeführt. Wenn man jetzt anstatt platt= false; , platt=true; schreibt, werden folgende Ausgaben erscheinen:

Der Ball ist platt
Der Ball wurde aufgepumpt
Lass uns spielen, der Ball ist aufgepumpt.

Dies war jetzt eine Einführung zu der einzweigigen if-Anweisung, einzweigig, weil es nur den 'if'-Teil gibt, aber der 'else'-Teil fehlt.

Der Befehl 'else' kann nur existieren, wenn es davor einen if Befehl gab.

also:

Code:
if(....) { IRGENDWAS; } else { IRGENDWAS ANDERES; }
Der else-Teil wird ausgeführt, wenn die if-Bedingung falsch war. Bei unserem BallTester kann dies nun so angewendet werden:

Code:
class BallTester { public static void main(String[]args) { boolean platt=false; if(platt==true) { System.out.println("Der Ball ist platt"); platt=false; System.out.println("Der Ball wurde aufgepumpt"); } else System.out.println("Der Ball war schon aufgepumpt"); System.out.println("Lass uns spielen, der Ball ist aufgepumpt"); } }
Hier noch einige Beispiele:
Code:
class WasserTemperaturTester { public static void main(String[]args) { int wasserTemperatur=60; if(wasserTemperatur=>100) System.out.println("Das Wasser kocht!"); else System.out.println("Das Wasser kocht noch nicht."); } }
Ausgabe bei wasserTemperatur=60: Das Wasser kocht noch nicht.
Ausgabe bei wasserTemperatur=120: Das Wasser kocht!

Code:
class NamenTester { public static void main(String[]args) { String name="Thomas"; if(name.equals("Tom")) System.out.println("Die Namen sind identisch"); else System.out.println("Die Namen sind nicht identisch"); } }
Ausgabe bei name="Tom": Die namen sind identisch
Ausgabe bei name="Tim": Die namen sind nicht identisch

/!\ Strings werden mit der Methode equals("...") verglichen und nicht mit ==.

Ich hoffe, dieses Tutorial war soweit verständlich und ich konnte einigen helfen
    Mit Zitat antworten
Antwort

RR:Board > Computer > Programmierung & Entwicklung > Programmier Tutorials > [Java] - [TUT] If-Abfrage


Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Flash/AS] - Probleme mit If-Abfrage ROMSKY Webentwicklung 0 11.05.2010 18:29
If-Abfrage funktioniert nicht phpnewbie Webentwicklung 8 20.01.2010 19:20
[.NET] - Fehler in If-Abfrage NcmX Programmierung & Entwicklung 11 11.01.2010 07:21
[C#] - Abfrage if else? Spearmint Programmierung & Entwicklung 3 21.11.2009 19:28
[C/C++] - *Update* IF - Abfrage / Double-Werte falsch Calyx Programmierung & Entwicklung 8 30.10.2009 13:14



Alle Zeitangaben in WEZ +1. Es ist jetzt 11:00 Uhr.
vBulletin Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.