2012-02-10 111 views
0

我有上有一个文本有这么多按钮的java程序,只要用户按下按钮一个按钮中的文本应该在一个空字符串添加,的java字符串追加不工作

例子,

String store =“”;

如果用户按“A”然后那么字母“A”存储在字符串变量“存储”如果然后用户按下“B”

然后商店必须等于“AB”,但是这在我的情况没有发生,什么情况是以前的字符串简单地通过更换新:S,

下面是代码,

String Text = ""; 

    for (int count = 0; count < names.length; count++){ 

     if (event.getSource()==buttons[count]){ 
      Text += buttons[count].getText(); 
      JOptionPane.showMessageDialog(null, Text); 
     } 

    } 

我到底做错了什么?为什么字符串没有添加新值?为什么它取代以前的? :S

+0

你引用的代码应该是追加的(因为'+ =')。如果您看到“文本”被覆盖,它必须位于代码的其他地方。 – 2012-02-10 18:45:23

+1

使用普通的Java命名法,“文本”应该是“文本”。请学习惯例并一致使用它们。特别是对于“开放源代码”的代码,或者可能由其他人操作或查看的代码。 – 2012-02-10 19:03:34

回答

3

Text动作侦听器中的局部变量?在这种情况下,它会一直重新初始化。让它成为你班上的一员。

+0

非常感谢它的工作 – 2012-02-10 18:48:19

0

很确定您在按第二个按钮之前意外地清除了Text变量。