如果我有很多类似的课程,比如说:
Integer i0;
Integer i1;
Integer i2;
Integer i3;
Integer i4;
Integer i5;
Integer i6;
Integer i7;
Integer i8;
Integer i9;想要避免这样做:
i0 = 0;
i1 = 1;
i2 = 2;
i3 = 3;
i4 = 4;
i5 = 5;
i6 = 6;
i7 = 7;
i8 = 8;
i9 = 9;为了达到同样的效果,我想做一些类似的事情:
int cnt = 0;
for(classname : arrayOfClassNames {
classname = cnt++;
}我该怎么做?
澄清我似乎被误解了。我更多地考虑的是仍然有10个单独的类,而不是一个包含10个项的数组。
发布于 2011-02-10 10:53:55
使用数组还是ArrayList?
// using an array
Integer[] ints = new Integer[10];
for (int i = 0; i < 10; i++) {
ints[i] = i;
}
// using an array list
ArrayList<Integer> ints = new ArrayList<Integer>();
for (int i = 0; i < 10; i++) {
ints.add(i);
}根据您的更新,您想要做的事情可以通过以下方法实现
Class.forName(classname).newInstance();但是,我建议无论您节省多少时间来编写代码,您都会失去可读性和维护性,因此您可能会发现这是一个错误的经济。
发布于 2011-02-10 10:55:31
将它们存储在一个数组中:
Integer[] array = new Integer[10];
for(int i = 0 ; i < 10 ; i++){
array[i] = i ;
}要获得i9:array[9]
发布于 2011-02-10 10:55:01
许多类似的类听起来像是您想要一个Array:
Integer[] manyI = new Integer[] {0, 1, 2, ....};或者用循环填充Array:
Integer[] manyI = new Integer[10];
for (int i = 0; i < manyI.length; i++) manyI[i] = i;https://stackoverflow.com/questions/4956137
复制相似问题