2013-11-24 69 views
0

這段代碼根本不工作。我嘗試了我所知道的一切!我無法解決與我的If語句的問題

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); 
       } 
      } 
     } 
    } 

的這個輸出是:

Cheat Selection: k1lla1otch3at 

NOT Cheat 1 

請幫幫忙!

+0

你知道如何正確比較字符串的值嗎?這是if語句的問題 –

回答

0

使用這樣

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

比較Java中使用.equals String對象()方法,而不是「==」操作符

,如果你想忽略的情況下使用如下代碼

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