Je ne peux pas résoudre le problème avec ma déclaration If

Ce morceau de code ne fonctionne pas du tout. J'ai essayé tout ce que je sais!

public static String[] CheatCodes = {"k1lla1otch3at", "H1gh$c0re!!", "wr1t3H1gh$C0r3$"};
if (actionconsole == 5){// Cheats
        String CheatSelection = JOptionPane.showInputDialog(null, "What Is You Code?"+eol+"Type It In Below"+eol+"WARNING! If You Get It Wrong Your Leader Will Lose Health!", "Cheats", JOptionPane.WARNING_MESSAGE);
        System.out.println("  Cheat Selection: "+CheatSelection);

        if(CheatSelection == CheatCodes[0]){
            warriershealth = 2;
            archershealth = 1;
            leaderhealth = 2;
            System.out.println("  successful!");
            JOptionPane.showMessageDialog(null, "Lots Of Enemies Have Been Killed!", "Cheat Successful", JOptionPane.INFORMATION_MESSAGE);
        }else{
            System.out.println("  NOT Cheat 1");
            if(CheatSelection == CheatCodes[1]){
                ScorePlus = 200;
                System.out.println("  successful!");
                JOptionPane.showMessageDialog(null, "Your Score Has Been Increased!", "Cheat Successful", JOptionPane.INFORMATION_MESSAGE);
            }else{
                if(CheatSelection == CheatCodes[2]){
                    WriteHighScore();
                    System.out.println("  successful!");
                    JOptionPane.showMessageDialog(null, "The High Scores Have Been Writen!", "Cheat Successful", JOptionPane.INFORMATION_MESSAGE);
                }
            }
        }
    }

La sortie de ceci est:

Cheat Selection: k1lla1otch3at

NOT Cheat 1

S'il vous plaît aider!

0
Savez-vous comment comparer correctement les valeurs de Strings? C'est le problème avec les instructions if
ajouté l'auteur Paul Samsotha, source

1 Réponses

utiliser comme ça

    if(CheatSelection.equals(CheatCodes[0]))

Pour comparer les objets String dans Java, utilisez la méthode .equals() au lieu de l'opérateur "=="

si vous voulez ignorer l'utilisation du cas comme ci-dessous

    if(CheatSelection.equalsIgnoreCase(CheatCodes[0]))
0
ajouté