我正在尝试使程序创建ArrayList
初始大小为1并用随机数填充它。接下来,ArrayList
清除,将的大小ArrayList
增加1,然后再次填充随机数。我希望程序重复这些步骤,直到ArrayList
大小等于用户指定的数字为止。
因此,输出将例如:
1个
3,8
6,3,7
...
ñ
到目前为止,我已经制作了:
public static void main (String args[]){
ArrayList<Integer> al = new ArrayList<Integer>();
Random rand = new Random();
int val=1;
int ii =1;
while(val<400){
for (int j = 0; j<ii;)
{
ii++;
val++;
pick = rand.nextInt(100);
al.add(pick);
}
System.out.println("Contents of al: " + al);
al.clear();
System.out.print("Array has been cleared: " + al);
}
有什么想法如何使其工作吗?
您永远不会增加j。您正在for循环内增加ii和val,正如我认为您实际上想要在while循环中进行的那样。请尝试下面的示例。
ArrayList<Integer> al = new ArrayList<Integer>();
Random rand = new Random();
int val=1;
int ii =0;
while(val < 400){
for (int j = 0; j<ii; j++) {
int pick = rand.nextInt(100);
al.add(pick);
}
ii++;
val++;
System.out.println("Contents of al: " + al);
al.clear();
System.out.print("Array has been cleared: " + al);
}
如果给变量赋予有意义的名称,您的任务将容易得多。例如
ArrayList<Integer> al = new ArrayList<Integer>();
Random rand = new Random();
int lineNumber = 1;
int lineLength = 0;
while(lineNumber < 400){
for (int randCount = 0; randCount < lineLength; randCount++) {
int pick = rand.nextInt(100);
al.add(pick);
}
lineLength++;
lineNumber++;
System.out.println("Contents of al: " + al);
al.clear();
System.out.print("Array has been cleared: " + al);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句