【发布时间】:2013-06-18 19:54:21
【问题描述】:
我有一个IndexOutOfBoundsException,但我不知道为什么。
我有几个文本字段(Integer、Double 和其他),我需要根据ArrayList<String> tagContentAL 上的信息使用它们
这是我的代码:
jLabelAL = new ArrayList<>();
jTextFieldAL = new ArrayList<>();
for (int i = 0; i < size; i++) {
jLabelAL.add(new JLabel("" + tagNamesAL.get(i)));
switch (tagContentAL.get(i).toString()) {
case "int":
jTextFieldAL.add((JTextField) new tools.IntegerTextField(simulation));
break;
case "double":
case "float":
jTextFieldAL.add((JTextField) new tools.DoubleTextField(simulation));
break;
case "*":
jTextFieldAL.add((JTextField) new JTextField());
break;
}
jTextFieldAL.get(i).addKeyListener(keyEvent); //IndexOutOfBoundsException in this line
p1.add(jLabelAL.get(i));
p1.add(jTextFieldAL.get(i));
}
似乎是什么问题?
【问题讨论】:
-
size定义在哪里? -
tagNamesAL.size() = size ?
-
您确定案例块已完成吗?如果没有覆盖 on 选项,则不会添加 JTextField .. 尝试插入默认大小写进行检查。
-
大小在
int size = tagNamesAL.size()上面定义(类似这样) -
@EduardoRocha
(something like this)是什么意思?您对此不确定吗?
标签: java swing exception indexoutofboundsexception