2013-05-17 36 views
0

我想尝试像填字游戏的东西。在5乘5格。 其中25个在其中有不同的字母,1个是提交按钮。所以每当我点击提交按钮。它会做这样的事情。 str是我从文本文件中检索的单词,猜测是char数组。java字符数组字符串与空格

  if (count == str.length()) 
      { 
       String a = String.copyValueOf(guess); 
      a= a.replaceAll("\\s+$", ""); 


       if (str.equals(a)) 
       { 
        JOptionPane.showMessageDialog(null, "Correct! Well Done!"); 
        score += 10; 
        totalScore.setText ("Score: " + score); 

       } 
       else 
        JOptionPane.showMessageDialog(null, "Please try again"); 

事情是,答案是否正确,它只会显示“请再试一次”。它可以工作,如果我改变我的数组大小[5],但如果它出界,如果我点击6个按钮。任何人都可以告诉我这有什么问题?

编辑:我添加了一个messageDialog,并显示在后面

JOptionPane.showMessageDialog(null, "|" + a + "|" + str + "|"); 

改变它吨的空间跳到

a= a.replace(" ", ""); 

没有工作过。

+1

你检查* STR *和* A *的内容是什么?将它们弹出到消息对话框或使用记录器。 – heikkim

+0

str没有问题。然而对于后面的大量空间。 a = a.replaceAll(“\\ s + $”,“”);不起作用。 – june

+3

如果要从字符串中删除空格,请尝试使用字符串的trim()函数。 – Matthias

回答

0

使用TRIM()函数。修整字符串空间的最简单方法。