Java 读取ArrayList JTextFields
我的程序开始时会提示用户希望有多少文本字段Java 读取ArrayList JTextFields,java,swing,arraylist,jtextfield,Java,Swing,Arraylist,Jtextfield,我的程序开始时会提示用户希望有多少文本字段 public class textEvent1 implements ActionListener { //action listener for "how many masses?" public void actionPerformed (ActionEvent e) { n = (int)(Double.parseDouble(massNumField.getText())); 接
public class textEvent1 implements ActionListener { //action listener for "how many masses?"
public void actionPerformed (ActionEvent e) {
n = (int)(Double.parseDouble(massNumField.getText()));
接下来,我创建一个for循环来创建标签和文本字段(我已经为它们创建了列表,因为我不知道会有多少)。这里有几个列表,但我只举一个例子
ArrayList masses = new ArrayList();
for(int i=1; i<=n; i++) { //adds text event 2 text to the screen
massLabel = new JLabel("How much mass does Mass " +i+ " have? ");
massField = new JTextField(5);
masses.add(massField);
第151行是
mass = Double.parseDouble(((JTextComponent) masses.get(i)).getText());
创建
JTextFields
时,需要执行以下操作:
for(int i=1; i<=n; i++) {
...
或者您可以使用增强for循环,除非您需要使用古老的java版本:
for (Object massField : masses) {
mass = Double.parseDouble(((JTextComponent) massField).getText());
...
(如果java版本支持泛型,那么您也应该真正使用泛型)。您可以编辑您的问题,包括如何创建和设置
masks
变量吗?我怀疑这可能就是问题所在。(点击问题左下角的编辑按钮)“任何建议都非常有用。”我建议你问一个问题。。另外:1)为了更快地获得更好的帮助,请发布一个。2) 始终复制/粘贴错误和异常输出。顺便问一下,是否有特殊原因不使用ArrayList
?这将节省演员阵容,有利于打字安全。是的,我试过了,但出于某种奇怪的原因,它没有接受。它给出了一条警告:“类型ArrayList不是泛型的;它不能用参数参数化”@davidjarin看起来您导入了错误的ArrayList
。它应该是java.util.ArrayList
for(int i=1; i<=n; i++) {
...
for (int i = 0; i < n; i++) {
...
for (Object massField : masses) {
mass = Double.parseDouble(((JTextComponent) massField).getText());
...