如何更改jSpinners的ArrayList中的值?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何更改jSpinners的ArrayList中的值?相关的知识,希望对你有一定的参考价值。
我尝试使用jSpinners创建我的Form应用程序。为了提高效率,我将所有jSpinner都放到了ArrayList()中,并希望为每个jSpinner设置值0。
ArrayList的声明:
public ArrayList mylist = new ArrayList();
使用jSpinners填充ArrayList:
mylist.add(jSpinner_500_e); mylist.add(jSpinner_200_e); mylist.add(jSpinner_100_e);
我也知道,函数“set(index_of_arraylist,value)允许更改ArrayList的某个索引,但在我的jSpinners中是属性setValue()来设置某个值。
有人知道,如何使用我的ArrayList()并调整for循环中的jSpinners值?非常感谢。
首先需要更改的是将类型参数添加到ArrayList中,以便让编译器知道它应该在哪种类型的对象。更改:
public ArrayList mylist = new ArrayList();
至:
public ArrayList<JSpinner> mylist = new ArrayList<>();
您可以看到“diamond operator”(<>
)的使用 - 它已经在JDK7中展示,它有助于减少一些不必要的代码并使其更清晰一些。现在你可以尝试一些走过mylist
并改变其内容值的可能性:
有for-each循环 - 您可以将其翻译为“对于来自JSpinner
的每个mylist
执行大括号内的代码:
for(JSpinner spinner : mylist) {
spinner.setValue(valueYouWantToSet);
}
实现相同结果的另一种方法是创建一个遍历ArrayList的Iterator,并为其每个元素执行指定的操作。你可以在这里看到一个例子:
Iterator<JSpinner> iterator = mylist.iterator();
while(iterator.hasNext()) {
it.next().setValue(valueYouWantToSet);
}
你也可以使用简单的for循环:
for(int i = 0; i < mylist.size(); i++) {
mylist.get(i).setValue(valueYouWantToSet);
}
以上是关于如何更改jSpinners的ArrayList中的值?的主要内容,如果未能解决你的问题,请参考以下文章