Frage von goveganyolo, 67

Java If-Anweisung funktioniert nicht!?

Hi Leute,

Ich habe vor einigen Tagen angefangen Java zu lernen. Ich arbeite mit Eclipse und wollte so als Anfang ein Programm schreiben in den nach einem Benutzernamen gefragt wird, wenn dieser JustinSeib ist wid man nach dem Passwort gerfragt, das ebenfalls JustinSeib ist! Wenn man dem Benutzernamen falsch eingegeben hat erscheint eine Fehlermeldung und man wird NICHT nach dem Passwort gefragt, wenn nur das Passwort falsch ist erscheint eine entsprechende Fehlermeldung. Aber das scheint bei mir nicht so ganz zu funktionieren, bei mir wird bei beidem IMMER die Fehlermeldung ausgegeben auch wenn ich alles korekkt in groß- und Kleinschreibung und alles beachte! ABER wenn ich in die Bedingung der If Anweisung direkt true reinschreibe funktioniert alles! Hier der Code bitte sagt mir wo mein fehler liegt sofern der fehler im Code liegt, muss er aber denn ich schreiben "JustinSeib" absolut richtig!

import javax.swing.JOptionPane;

public class Lernen {

public static void main(String[] args) {
    
String Benutzername =  JOptionPane.showInputDialog("Geben deinen Benutzernamen ein: ");
    

if (Benutzername == "JustinSeib") { String Passwort = JOptionPane.showInputDialog("Gebe dein Passwort ein: ");

    if (Passwort == "JustinSeib") {
        
        JOptionPane.showMessageDialog(null, "Guten Tag Justin!");
    } else {
        JOptionPane.showMessageDialog(null, "Dein Passwort ist falsch!");
        
    }

    } else {
        
        JOptionPane.showMessageDialog(null, "Dieser Benutzer exestiert nicht!");
        
    }




}

}

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von david23x, 55

Man darf Strings nicht mit dem Doppelgleich verhleichen, sondern muss die Equals-Funtion benutzen. Siehe: http://www.java-forum.org/thema/vergleichen-von-strings.1350/ .

Kommentar von Unkreatiiiev ,

Darf man schon. Funktioniert auch. Muss sich eben um das gleiche Objekt handeln.

Antwort
von ASW19, 41
public class Lernen {

public static void main(String[] args) {
String expextedPassword = "JustinSeib";

String Benutzername = JOptionPane.showInputDialog("Geben deinen Benutzernamen ein: ");

if (expextedPassword.equals(Benutzername)) {
String Passwort = JOptionPane.showInputDialog("Gebe dein Passwort ein: ");

if (expextedPassword.equals(Passwort)) {

JOptionPane.showMessageDialog(null, "Guten Tag Justin!");
} else {
JOptionPane.showMessageDialog(null, "Dein Passwort ist falsch!");
}

} else {
JOptionPane.showMessageDialog(null, "Dieser Benutzer exestiert nicht!");
}
}
}

//Funktioniert.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten