ArrayList和java.lang.OutOfMemoryError

用户3396201

我正在尝试使程序创建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);
}

有什么想法如何使其工作吗?

bspencer

您永远不会增加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] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

java.lang.outofmemoryerror异常?

来自分类Dev

java.lang.OutOfMemoryError图片

来自分类Dev

Android java.lang.OutOfMemoryError?

来自分类Dev

AndroidRuntime:java.lang.OutOfMemoryError

来自分类Dev

java.lang.OutOfMemoryError:Android

来自分类Dev

java.lang.OutOfMemoryError图片

来自分类Dev

java.lang.OutOfMemoryError:Android

来自分类Dev

错误是java.lang.OutOfMemoryError

来自分类Dev

java.lang.OutOfMemoryError:Java堆空间

来自分类Dev

java.lang.OutOfMemoryError:Java堆空间?

来自分类Dev

java.lang.OutOfMemoryError-BitmapFactory.decode(strPath)

来自分类Dev

Android由java.lang.outofmemoryerror引起

来自分类Dev

Asynctask中的java.lang.OutOfMemoryError错误

来自分类Dev

密码查询给出java.lang.OutOfMemoryError

来自分类Dev

从java.lang.OutOfMemoryError中恢复

来自分类Dev

尾部递归的java.lang.OutOfMemoryError

来自分类Dev

Eclipse:java.lang.OutOfMemoryError:PermGen空间

来自分类Dev

java.lang.OutOfMemoryError:PermGen空间异常

来自分类Dev

包含ImageViews的ViewPager的java.lang.OutOfMemoryError

来自分类Dev

我的 for 循环中的 java.lang.OutOfMemoryError

来自分类Dev

java.lang.OutOfMemoryError:PermGen与Jenkins和Maven

来自分类Dev

java.lang.OutOfMemoryError:Java 8的Java堆空间

来自分类Dev

常量dspace错误java.lang.OutOfMemoryError:Java堆空间

来自分类Dev

java.lang.OutOfMemoryError:100000条记录的Java堆空间

来自分类Dev

Eclipse:java.lang.OutOfMemoryError:Java堆空间

来自分类Dev

java.lang.OutOfMemoryError:Grails中的Java堆空间

来自分类Dev

java.lang.OutOfMemoryError:带有蜂巢的Java堆空间

来自分类Dev

NETBEANS:“ java.lang.OutOfMemoryError:Java堆空间”

来自分类Dev

SonarQube分析失败java.lang.OutOfMemoryError:Java堆空间

Related 相关文章

热门标签

归档