将一系列Class实例添加到ArrayList变量

时间:2013-10-10 20:27:36

标签: arraylist multiple-instances

这段代码似乎与我在网上找到的一个例子非常接近,但它不对,我找不到符合我试图做的例子。也许我只是没有正确设置参数和字段;或者我的做法可能是错的。

package vibrationSimulator;

import java.awt.EventQueue;
import java.util.ArrayList;
import java.util.List;

import sineWaveAnimation.SineDisplay;
import audioOutput.JFrame_sliderSine;

public class VibrationSimulator {

    private static List<MachineParameters> machineParameterArray;
    private static int ia;
    private static MachineParameters machineParameter_1;

    public static void main(String[] args) {
        Start();
    }

    public static void Start() {
        ArrayList<MachineParameters> machineParameterArray = new ArrayList<MachineParameters>();
        MachineParameters machineParameter_1 = new MachineParameters();
        machineParameter_1.frame.setVisible(true);
    }

    public static void Process() {
        // machineParameterArray.add(machineParameter_1);
        if (MachineParameters.isGoDone()) {
            // machineParameterArray[ia] = machineParameter_1;
            MachineParameters machineParameter_1 = new MachineParameters();
            machineParameter_1.frame.setVisible(true);
        } else {
            StartAnimations();
        }
    }

我有MachineParameters类,只需一个简单的GUI来输入值。 Start创建MachineParameters的第一个实例,当从MachineParameter类调用时,Process应该将该实例添加到ArrayList。如果GoDone为true或者启动,则Process创建另一个实例,如果为false,则创建动画。 ArrayList将用于设置动画的参数。 true / false由GUI上的Submit或Done按钮设置。

当我添加Remmed输出行时: // machineParameterArray.add(machineParameter_1); machineParameters_1没有引用该实例。

此外,所有实例都具有相同的名称;我不确定如何增加变量名称 - 看起来不正确。

如果你愿意,可以嘲笑我,但我最终会说得对;然后我就知道该怎么做了。

1 个答案:

答案 0 :(得分:0)

从构造函数中删除ArrayList。显然它会创建一个局部变量而不是实例。

所以: machineParameterArray = new ArrayList();