If - Else

Status
Nicht offen für weitere Antworten.

babba

Mitglied
Hi,
Ich hab heute erst mit Java angefangen und n bisschen rumprobiert und so.
Hab ich mich also auch gleich an if und so rangewagt:

Code:
import java.io.*;

public class scan
{
	public static void main(String [] args) throws IOException
	{
		BufferedReader eingabe = new BufferedReader(new InputStreamReader(System.in));
	 	String speicher = "";
	 	String Ja = "Ja";
	 	String Nein = "Nein";
	    System.out.println("Magst du mich? Ja/Nein");
	 	speicher = eingabe.readLine();
	 	
	 	
	 	if (speicher.equals(Nein))
		{
	 		System.out.println("Fick dich!");
		}
		
		if (speicher.equals(Ja))
		{
			System.out.println("Awwww :3 Ich dich auch :D");
		}
		
		else
		{ 
			System.out.println("Hö? Nochmal, bitte...mit großem Anfangsbuchstaben");
		}
	}
}

Das ist nichts ernsthaftes, nur n kleiner Spaß beim lernen :-D.
Wenn ich das allerdings ausführe und Nein eingebe, dann kommt sowohl die Ausgabe von speicher.equals(Nein) als auch die von else.
Wie schaff ich das jetzt, dass nur speicher.equals(Nein) angezeigt wird?

MfG
Johannes
 

0x7F800000

Top Contributor
Code:
if(erfüllt){ 
   wird ausgeführt 
}
...
if(nicht erfüllt){
   wird nicht ausgeführt
}else{
   wird schon wieder ausgeführt
}
das sind zwei abfragen, die nichts miteinander zu tun haben.
verwende
Code:
if(erfüllt){ 
   wird ausgeführt 
}else if(nicht erfüllt){
   wird nicht ausgeführt
}else{
   wird nicht ausgeführt
}
omg, was'n emotional gestörtes programm^^ :lol:
 

babba

Mitglied
Ich hab jetzt nicht ganz verstanden, was du mir damit sagen wolltest...:bahnhof:
Musst bedenken, dass ich gestern erst angefangen hab.
Also, könntest du mir vllt n konkretes Bsp anhand des Codes geben? ???:L

Bis zur nächsten antwort hab ich mir mal so geholfen:
Code:
else{ 
			System.err.println("Hö? Nochmal, bitte...mit großem Anfangsbuchstaben");
		}
Allerdings bezweifle ich, dass ich else immer mit System.err machen werde -.-

Andrey hat gesagt.:
omg, was'n emotional gestörtes programm^^ icon_lol.gif

Wie gesagt, es war nur mal ein Anfang, mich sowohl an if als auch an Eingabe heranzutasten, und das war das erste, was meinem kranken Geist entsprungen ist :lol:
 
S

SlaterB

Gast
was macht denn System.err zu Sytem.out für einen Unterschied?

nochmal Andreys eigentlich sehr ausführliches Beispiel:



if (bedingung1) {
1
}

if (bedingung2) {
2
} else {
3
}

hier wird 1 und 3 ausgeführt, 1 sowieso, 3 aber auch, da das zweite if+else ein eigenständiger Abschnitt ist, der vom ersten if unabhängig agiert

mit

if (bedingung1) {
1
} else if (bedingung2) {
2
} else {
3
}


kann es nur entweder zu 1, 2 oder 3 kommen,
wenn 1 erfüllt ist, kommen die restlichen BEIDEN Abschnitte nicht mehr dran, da sie im else zum ersten if stehen,
also vom ersten if abhängen
 

babba

Mitglied
SlaterB hat gesagt.:
was macht denn System.err zu Sytem.out für einen Unterschied?
Wenn das ich wüsste...(Halbbayer hier:cool: ) Aber komischerweise ging es mit System.err so wie ichs wollte :autsch:


nochmal Andreys eigentlich sehr ausführliches Beispiel:



if (bedingung1) {
1
}

if (bedingung2) {
2
} else {
3
}

hier wird 1 und 3 ausgeführt, 1 sowieso, 3 aber auch, da das zweite if+else ein eigenständiger Abschnitt ist, der vom ersten if unabhängig agiert

Ich weiß nicht, wieso ich das eben nicht verstanden, vllt, weil ich grad aus der Schule gekommen bin :-D

mit

if (bedingung1) {
1
} else if (bedingung2) {
2
} else {
3
}


kann es nur entweder zu 1, 2 oder 3 kommen,
wenn 1 erfüllt ist, kommen die restlichen BEIDEN Abschnitte nicht mehr dran, da sie im else zum ersten if stehen,
also vom ersten if abhängen

Achso...jetzt ist alles klar, danke!
 
G

Guest

Gast
Hi,

du hast 2 getrennte Abfragen. Das Programm sieht nach der ersten if-Anweisung die Abfrage als beendet an, weil du dann wieder ein erneutes "if" bringst. Da die beiden Abfragen aber aufeinander aufbauen musst die mit "else if" weitermachen um zu sagen dass es immer noch die gleiche Abfrage ist, du aber noch auf einen weiteren Fall prüfen willst

Also etwa so: (ich hab mal deine Nein Antwort etwas abgeschwächt :wink: )


Code:
.....

    if (speicher.equals(Nein))
	      {
	          System.out.println("Ok, dann nicht!");
	      }
	      
    else if (speicher.equals(Ja))
	      {
	         System.out.println("Awwww :3 Ich dich auch :D");
	      }
	      
     else
	      {
	         System.out.println("Hö? Nochmal, bitte...mit großem Anfangsbuchstaben");
	      } 
.....


Außerdem solltest du auf die Konventionen achten (Variablennamen klein, Klassennamen Groß)
 

Templon

Bekanntes Mitglied
Also so wie du das im Moment hast UND wir nehmen an das der Benutzer JA eingegeben hat

Code:
if (eingabe.equals("Ja") {
    // Dieser Code hier drin wird ausgeführt.
}

if (eingabe.equals("Nein") {
    // Dieser Code hier drin wird NICHT ausgeführt (Die eingabe war Ja)
} else {
    // Dieser Code wird wieder ausgeführt, da die eingabe NICHT Nein war.
}

Darum funktioniert das nicht und du must ein "else if" brauchen:

Code:
if (eingabe.equals("Ja") {
     // Dieser Code hier drin wird ausgeführt.
} else if (eingabe.equals("Nein") {
    // Dieser Code hier drin wird NICHT ausgeführt (Die eingabe war Ja)
} else {
    // Dieser Code wird NICHT ausgeführt (Die eingabe war Ja, wenn man jetzt irgendetwas
    // anderes als Ja oder Nein eingibt wird der Code hier drin ausgeführt).
}

Edit: Ach du Scheisse, viel zu langsam :roll: ^^
 

babba

Mitglied
trotzdem danke!
Anonymous hat gesagt.:
Außerdem solltest du auf die Konventionen achten (Variablennamen klein, Klassennamen Groß)

Ist das sehr wichtig, oder nur, damit andere es besser verstehen?
Ich fang ja grad erst an, also kann ich mich noch umgewöhnen... :cool:
 
G

Gast

Gast
Das ist eine Java Grundlage und das solltest du dir unbedingt angewöhnen
 

Schandro

Top Contributor
Dem Compiler ist es völlig egal, wie es geschrieben ist (solange kein Leerzeichen oder so vorkommt^^)

In der Java Convention (java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html) wird es aber so vorgeschrieben, und fast alle halten sich auch zum Glück dadran. Erleichtert einfach ungemein Code von anderen Programmierern zu lesen.

Achso, das Groß/Kleinschreiben bezieht sich nur auf den esten Buchstaben, ansonsten sollten längere Namen so geschrieben werden:

int alterDesMenschen;
 

0x7F800000

Top Contributor
babba hat gesagt.:
Ist das sehr wichtig, oder nur, damit andere es besser verstehen?
wenn man bis zur hinrichtung in isolationshaft hockt und zum spaß für sich programmiert, ist das wohl weniger wichtig. In allen anderen Fällen würde ich zweimal nachdenken, bevor ich mit irgendwelchen separatistischen konventionsmissachtungen anfange.
 

babba

Mitglied
Hm, ich glaube, wenn man programmiert, ist man eher nicht auf einer Bildungseinrichtung, auf der so etwas üblich ist...
Oder? :?

Oh, man...jetzt wirds aber wirklich OT.

__

Mein Bruder kommt heute wieder, der studiert grad Informatik auf Master...der kann mir das bestimmt alles erklären mit den Konventionen und den Befehlen &so on.
Aber wenn er nicht da ist, dann muss ich mich wohl immer an euch wenden, wobei das nicht heißt, dass das schlecht wäre.

Also, danke nochmal für den Link mit den Konventionen...wusste gar nicht, dass es sowas gibt.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T if-else Bedingung wird ignoriert Java Basics - Anfänger-Themen 4
I If / Else in Setter? Java Basics - Anfänger-Themen 8
M If-Else Java Basics - Anfänger-Themen 5
monsterherz if / else if mit Fehler den ich leider nicht finde Java Basics - Anfänger-Themen 11
laxla123 Verschachtelte If-Else Schleife Java Basics - Anfänger-Themen 21
laxla123 If-else Java Java Basics - Anfänger-Themen 4
luggas89 If else auch mit unterschiedlichen Antworten Java Basics - Anfänger-Themen 5
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 0
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 5
W Verschachtelte If-else --> finde meinen Fehler nicht Java Basics - Anfänger-Themen 30
pumpgun99 Fehler Meldung "else without if" Java Basics - Anfänger-Themen 3
B Scanner-If/else kleine Abhebungs-Simulation Java Basics - Anfänger-Themen 3
A Übung Else if Java Basics - Anfänger-Themen 2
M Else wird nicht ausgeführt. Java Basics - Anfänger-Themen 5
L If und else bei 2 Dimensionalen Arrays Java Basics - Anfänger-Themen 8
F if else if anfängerfrage Java Basics - Anfänger-Themen 22
T if else Befehl funktioniert nicht richtig Java Basics - Anfänger-Themen 27
C Problem mit If Else If und Überprüfung eines Counters Java Basics - Anfänger-Themen 3
T "Einkauf" & if else Struktur Java Basics - Anfänger-Themen 7
steven789hjk543 Input mit if-else Java Basics - Anfänger-Themen 23
H ERGÄNZUNGSFRAGE: Klammersetzung bei if-else Anweisungen und Schleifen Java Basics - Anfänger-Themen 2
A break; mit Einfluss hinter else if Block Java Basics - Anfänger-Themen 3
R else without if error Java Basics - Anfänger-Themen 5
F Methoden Verschachtelte if else Methode Java Basics - Anfänger-Themen 10
M Java Taschenrechner (if-else) Java Basics - Anfänger-Themen 11
C Variablen 'else' without 'if' Java Basics - Anfänger-Themen 4
F If - Else Java Basics - Anfänger-Themen 3
F Variablen If else: Einer Variable einen Wert hinzufügen oder so? Java Basics - Anfänger-Themen 6
I if/else Statements Java Anfänger Java Basics - Anfänger-Themen 14
M jOptionPane mit if else Java Basics - Anfänger-Themen 16
K Frage zu If & else if Java Basics - Anfänger-Themen 5
R else if anweisungen Java Basics - Anfänger-Themen 2
Y Problem mit If-Else Verzweigung! Java Basics - Anfänger-Themen 9
A Warum funktioniert switch aber nicht if/else? Java Basics - Anfänger-Themen 23
Hijo2006 If-else Java Basics - Anfänger-Themen 6
P Erste Schritte Taschenrechner mit if-else Anweisung Java Basics - Anfänger-Themen 6
T If/ Else If (zurückkehren) Java Basics - Anfänger-Themen 4
O Grosse If / Else verschachtelung übersichlitcher gestlten Java Basics - Anfänger-Themen 6
S Erste Schritte Unterschied "if" und "else if" Java Basics - Anfänger-Themen 27
M If in einem else Java Basics - Anfänger-Themen 14
A boolean Methode ohne If und else Java Basics - Anfänger-Themen 1
J Mehrere IF Anweisungen und dazugehörige ELSE Java Basics - Anfänger-Themen 6
C else in if umschreiben Java Basics - Anfänger-Themen 2
J Fehlermeldung else without if Java Basics - Anfänger-Themen 5
P Compiler-Fehler wieso zeigt der compiler ein else without if? Java Basics - Anfänger-Themen 3
E If...else... Java Basics - Anfänger-Themen 7
G Mehrere If-else-Sätze der Reihe nach durchlaufen lassen Java Basics - Anfänger-Themen 2
C If Else Frage Java Basics - Anfänger-Themen 2
M if, else Anweisung Java Basics - Anfänger-Themen 3
J Ergebnis wird gespammt sowie eine else if Frage Java Basics - Anfänger-Themen 2
A instanceof-if-else-Anweisungen eleganter lösen Java Basics - Anfänger-Themen 5
O if and else geht nur manchmal Java Basics - Anfänger-Themen 17
V Operatoren Java if-else argument Java Basics - Anfänger-Themen 4
D Keine Funktion bei "else" Java Basics - Anfänger-Themen 5
P [ANFÄNGER] if else funktioniert nicht Java Basics - Anfänger-Themen 4
T If, else Problem Java Basics - Anfänger-Themen 12
C IF-Else Verknüpfungen Java Basics - Anfänger-Themen 10
Uzi21 if - else Abfrage Java Basics - Anfänger-Themen 6
T Problem im If-Else-Statement Java Basics - Anfänger-Themen 4
R if funktion ohne else - Bedingung trifft nicht zu, ausgabe nicht nachvollziehbar Java Basics - Anfänger-Themen 7
T If ; else error on system token delete Java Basics - Anfänger-Themen 5
N Best Practice Stilistische Anwendung von if/else-Abfragen Java Basics - Anfänger-Themen 7
L else without if Fehler Java Basics - Anfänger-Themen 14
F try/catch - (else) Java Basics - Anfänger-Themen 11
H Worauf bezieht sich die erste else-Anweisung Java Basics - Anfänger-Themen 9
S if und else problem... Java Basics - Anfänger-Themen 13
Q if-else Logikproblem Java Basics - Anfänger-Themen 4
M Probleme mit else if Java Basics - Anfänger-Themen 15
M Erste Schritte Break-Anweisung bei if-else Java Basics - Anfänger-Themen 6
B OOP If und else in Main class einbinden Java Basics - Anfänger-Themen 9
T Erste Schritte switch case Anweisung und if else Verzweigungen? Java Basics - Anfänger-Themen 6
K Bedingungen else Java Basics - Anfänger-Themen 7
B if-else in einer schleife Java Basics - Anfänger-Themen 14
J Erste Schritte If-Else Idee gesucht Java Basics - Anfänger-Themen 6
T if else Java Basics - Anfänger-Themen 8
R boolean, if-else Java Basics - Anfänger-Themen 7
M if then else geht nicht Java Basics - Anfänger-Themen 10
P int-Wertevergleich mit if-else-Verzweigung Java Basics - Anfänger-Themen 3
P If-else-Verzweigung Java Basics - Anfänger-Themen 9
E Compiler-Fehler Fehler: else without if Java Basics - Anfänger-Themen 11
D Java Einsteiger (boolean, if-else etc.) Java Basics - Anfänger-Themen 7
I Methoden Problem If/Else; Public Void Java Basics - Anfänger-Themen 6
P Anzahl der else if Operatoren begrenzt?? Java Basics - Anfänger-Themen 7
K Mal wieder ein Problem mit If / Else Java Basics - Anfänger-Themen 10
K Anfänger If / Else Problem Java Basics - Anfänger-Themen 5
C if else Abfrage Java Basics - Anfänger-Themen 11
T Umschreiben von switch in if else und umgekehrt Java Basics - Anfänger-Themen 9
C Schleifen, if, else......? Java Basics - Anfänger-Themen 8
2 if und else Java Basics - Anfänger-Themen 9
L If/else nicht korrekt ausgeführt. Java Basics - Anfänger-Themen 22
E Verschachtelte If-Anweisungen - "else without if" Java Basics - Anfänger-Themen 4
S Brauche Hilfe bei if/else Java Basics - Anfänger-Themen 3
S if-else Java Basics - Anfänger-Themen 22
A ein if else problem Java Basics - Anfänger-Themen 13
N If-else-If Leiter Java Basics - Anfänger-Themen 9
U Dringend: Syntax error on token "else" Java Basics - Anfänger-Themen 8
L if else anweisung Java Basics - Anfänger-Themen 2
M If/Else mit Zahlenfolge Java Basics - Anfänger-Themen 13
B Problem mit Variable und if/else Java Basics - Anfänger-Themen 6
H alternativen zu if .. else .. Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben