Klassen Mehrseitige Auswahl

ProSonixs

Mitglied
Sehr geehrte Community,
ich sollte in Java ein Programm schreiben im Themenbereich "Merseitige Auswahl".

Die erste Variante wäre "switch":

Java:
switch (selektor)
{
  case wert1: Anweisung1;  break;
  case wert2: Anweisung2;  break;
  case wert3: Anweisung3;  break;
  default: Anweisung4;
}

Die zweite Variante wäre "else if":

Java:
if(messwert>0 && messwert<35)
  System.out.println("normale Temperatur");
else if(messwert>36 && messwert<45)
  System.out.println("erhöhte Temperatur");

Nun komme ich endlich zu meiner Frage:

Ich verstehe nicht was else if macht?


Ich habe schon if und else behandelt aber nicht als "else if"
 
Zuletzt bearbeitet:
Java:
if(messwert>0 && messwert<35)                       // wenn messert größer 0 und messwert kleiner 35
  System.out.println("normale Temperatur");         // gib "normale Temperatur" aus
else if(messwert>36 && messwert<45)                 // ansonsten wenn messwert größer 36 und messwert 
                                                    // kleiner 45
  System.out.println("erhöhte Temperatur");         // gib "erhöhte Temperatur" aus

Sofern die erste If-Anweißung zutrifft wird diese ausgeführt und danach direkt verlassen, ansonsten geht es weiter zum else if.
Wo genau liegt denn das Problem?
 
Ich habe schon if und else behandelt aber nicht als "else if"

Wenn du if und else verstanden hast, ergibt sich else if unmittelbar daraus.
An ein if else Kontrukt wird im else Fall ein weiteres if aufgeführt.

Mach mal Klammern, dann verstehst du es vielleicht.

Java:
if(messwert>0 && messwert<35) {
  System.out.println("normale Temperatur");
}
else {
     if(messwert>36 && messwert<45) {
       System.out.println("erhöhte Temperatur");
     }
}
 
Zuletzt bearbeitet:
Sofern die erste If-Anweißung zutrifft wird diese ausgeführt und danach direkt verlassen, ansonsten geht es weiter zum else if.
Wo genau liegt denn das Problem?


Ich könnte doch eigentlich auch:

Java:
if()
{
  System.out.......
}
else
{
  System.out.......
}

if()
{
  System.out.......
}
else
{
  System.out.......
}
.
.
.
 
Ja, das könntest du auch machen... dann wird pro if-Abfrage immer 1 System.out.println gemacht, aber vielleicht willst du das ja auch.
 
Zuletzt bearbeitet:
Ich könnte doch eigentlich auch:

Java:
if()
{
  System.out.......
}
else
{
  System.out.......
}

if()
{
  System.out.......
}
else
{
  System.out.......
}
.
.
.


JEIN, denn mit dieser Konstruktion erhälst Du 2 Ausgaben (
Code:
System.out
).
Während das else-if ein weiteres IF in dem ELSE-Block ist.
 
Jetzt habe ich verstanden was else if macht, danke ;-)

Wenn du if und else verstanden hast, ergibt sich else if unmittelbar daraus.
An ein if else Kontrukt wird im else Fall ein weiteres if aufgeführt.

Mach mal Klammern, dann verstehst du es vielleicht.

Java:
if(messwert>0 && messwert<35) {
  System.out.println("normale Temperatur");
}
else {
     if(messwert>36 && messwert<45) {
       System.out.println("erhöhte Temperatur");
     }
}
 

Neue Themen


Zurück
Oben