Verschachtelte If-Bedingung

Zumzum

Neues Mitglied
Hallo ich hatte mal eine Frage bezüglich der verschachtelten if-Bedingung:

Ich möchte, dass das Programm erst schauen soll ob der Name == Max ist und falls das richtig ist ob der Nachname == Mustermann ist. Falls das nicht der Fall sein sollte sollte das Programm sowas wie "Der Name ist falsch " ausgeben. Irgendwie klappt das bei mir nicht, also das Programm, was ich geschrieben habe lautet:

public void setName(String name)
{

}
public void setNachname(Sring nachname)
{

}
public void anzeigen()
{
if (name == "Max")

{ System.out.println ("Ich heiße Max");
}
else if (vorname == "Mustermann")
{
System.out.println ("Ich heiße Max Mustermann");
}
else
System.out.println ("Ich heiße nicht Max Mustermann");
}
 
Der Setter setName und setNachname ist leer.
Du willst aber jeweils den Namen und Nachnamen setzen.
Also musst du dann den String name mit dem Setter setName "überschreiben".

Deine If-Anweisung sieht nicht gut aus.
Java:
    public void setName(String name)
    {
        this.name = name;
    }

private String name, nachname;

Abfrage Name;
Abrage Nachname;

wenn(String name gleich Name && String nachname gleich Nachname)
schreibe "Mein Name ist: " Name "Mein Nachname ist: " Nachname
wenn nicht
was soll dann passieren?
 
Zuletzt bearbeitet:
Lies dich mal in die Booleschen Operatoren ein. Dies würde dein Programmcode um einiges kürzen.

Bsp.

Java:
if(vorname.equals("Max") && nachname.equals("Mustermann")){
           
            System.out.println("Ich heiße Max Mustermann");
           
        }
       
        else {
           
            System.out.println("Ich heiße nicht Max Mustermann");
        }
 
Mach ordentliche Einrückungen!
"if () else" kann man mit "wenn dies, dann mach das, anderfalls mach was anderes übersetzen. Demnach ist es nicht korrekt, wenn du folgendes machst:
wenn name = max, dann schreibe "max", andernfalls, wenn vorname = mustermann, dann schreibe "max mustermann".

Java:
public void anzeigen()
{
     if (name == "Max") // wenn name = max
     {
          System.out.println ("Ich heiße Max"); // dann schreibe "max"
     }
     else if (vorname == "Mustermann") // andernfalls, wenn vorname = mustermann
     {
          System.out.println ("Ich heiße Max Mustermann"); // schreibe "max mustermann"
     }
     else System.out.println ("Ich heiße nicht Max Mustermann"); // andernfalls schreibe "nix davon"
}

Außerdem sind Vor- und Nachname vertauscht.
 
Mach ordentliche Einrückungen!
"if () else" kann man mit "wenn dies, dann mach das, anderfalls mach was anderes übersetzen. Demnach ist es nicht korrekt, wenn du folgendes machst:
wenn name = max, dann schreibe "max", andernfalls, wenn vorname = mustermann, dann schreibe "max mustermann".

Java:
public void anzeigen()
{
     if (name == "Max") // wenn name = max
     {
          System.out.println ("Ich heiße Max"); // dann schreibe "max"
     }
     else if (vorname == "Mustermann") // andernfalls, wenn vorname = mustermann
     {
          System.out.println ("Ich heiße Max Mustermann"); // schreibe "max mustermann"
     }
     else System.out.println ("Ich heiße nicht Max Mustermann"); // andernfalls schreibe "nix davon"
}

aber so klappt das doch auch nicht🙁

Außerdem sind Vor- und Nachname vertauscht.
 

Neue Themen


Zurück
Oben