Java 列表<;整数>;错误
首先我把Java 列表<;整数>;错误,java,syntax-error,Java,Syntax Error,首先我把 List<int> age = new ArrayList<int>(); for (int i = 1; i <= 100; ++i) { age.add(i); } JComboBox ageComboBox = new JComboBox(age); List age=new ArrayList(); 对于(int i=1;i(ArrayList)未定义请使用Vector,并且不要对JComboBox进行参数化。另请参
List<int> age = new ArrayList<int>();
for (int i = 1; i <= 100; ++i) {
age.add(i);
}
JComboBox ageComboBox = new JComboBox(age);
List age=new ArrayList();
对于(int i=1;i(ArrayList)未定义请使用Vector
,并且不要对JComboBox
进行参数化。另请参阅
文档中说,JComboBox
没有参数化,它具有构造函数JComboBox(向量项)
(其中,此项最适合您)
JComboBox()
JComboBox(ComboBoxModel aModel)
JComboBox(Object[] items)
JComboBox(Vector<?> items)
刚刚意识到,您可能在Java 7上,JCombobox是参数化的。但是,JCombobox的类型参数应该是集合元素的类型,而不是集合本身。但是我的快速修复应该仍然有效
瞧
JComboBox ageEntries=newjcombobox(ageList.toArray(newinteger[]);
您正在创建一个组合框,其中包含ArrayList作为元素。我猜您只是想添加整数,所以直接使用Integer类型。然后您传递ageList,它是构造函数中的ArrayList
jcombobox中有几个构造函数:
- JComboBox()
- JComboBox(向量项)
- JComboBox(E[]项)
- JComboBox(ComboBoxModel aModel)
其中没有一个可以用于您尝试执行的操作,ageList不是向量,也不是数组,而是ArrayList
如果您试图将整数列表添加到组合框中,我建议您创建一个新模型并将所有整数添加到该模型中。然后将模型分配到组合框,如下所示:
DefaultComboBoxModel<Integer> model = new DefaultComboBoxModel<Integer>();
for (Integer i : ageList) {
model.addElement(i);
}
JComboBox<Integer> ageEntries = new JComboBox<Integer>();
ageEntries.setModel(model);
DefaultComboxModel=newDefaultComboxModel();
for(整数i:ageList){
模型.补充件(i);
}
JComboBox ageEntries=新的JComboBox();
ageEntries.setModel(model);
new JComboBox(ageList.toArray(new Integer[]));
JComboBox<Integer> ageEntries = new JComboBox<Integer>(ageList.toArray(new Integer[]));
DefaultComboBoxModel<Integer> model = new DefaultComboBoxModel<Integer>();
for (Integer i : ageList) {
model.addElement(i);
}
JComboBox<Integer> ageEntries = new JComboBox<Integer>();
ageEntries.setModel(model);