根据按下按钮选择阵列存储的内容

时间:2011-11-01 13:32:03

标签: java arrays swing data-structures

我正试图找到一种方法来根据用户在GUI上按哪个按钮来选择数组存储。

显然,由于变量名称相同,因此无法编译。

计算在循环外执行,但使用“值”。我只希望用户能够根据他们按下的按钮确定数组中设置的值。显而易见的问题是无法使用名称“值”两次,这是我遇到问题的地方,因为我有一个需要变量“值”的for循环,我不想重新添加当最有可能是我目前没有看到的简单解决方法时,为每个数据集编码几次。

3 个答案:

答案 0 :(得分:2)

只需宣读声明:

double[] Xvalues = null;
if (e.getSource() == X1btn) {
   Xvalues = new double[]{2001,350,799,1004};
}
else if (e.getSource() == X2btn) {
   Xvalues = new double[]{5,62,28,500};
}

答案 1 :(得分:1)

更好的方法是子类JButton并将一组值与每个实例相关联。要检索按钮的值,请包含一个访问者。

示例

public final class JArrayButton extends JButton{
    private final double[] values;

    public JArrayButton(double[] values){
        this.values = values;
    }

    // ... other stuff (e.g. constructors)

    public final double[] getValues(){
        return values;
    }
}

答案 2 :(得分:0)

如果在循环外创建数组怎么办? double值[] =新值[5]; //或者你想要的任何尺寸

然后使用if / else语句

if (e.getSource() == X1btn) {
Xvalues ={2001,350,799,1004};
} else if (e.getSource() == X2btn) {
Xvalues={5,62,28,500};
}