ArrayList
Points
可存储的元素的最大数量是多少?
换句话说,鉴于此代码:
ArrayList<Point> x = new ArrayList<>();
for (int i = 0; i < maxElements; i++) {
x.add(new Point(0, 0));
}
maxElements
允许的最大值(给定足够的堆空间),x.get(0)
是正确的值并且可以访问?
答案 0 :(得分:2)
答案 1 :(得分:0)
maxElements
可能是列表的限制。如果您需要x.size() > 0
,可以使用x.get(0)
检查。
ArrayList<Points> x = new ArrayList<>();
for (int i = 0; i < maxElements; i++) {
x.add(new Point(0, 0));
}
Points p;
if (x.size() > 0)
p = x.get(0);
答案 2 :(得分:0)
What is the maximum number of elements an ArrayList of Points can store?
ArrayList和Points是对象并存储在堆内存中。如果堆内存可以支持,它最多可以存储Integer.MAX_VALUE(2^31-1)
,但您可能会先获得java.lang.OutOfMemoryError
这一点。
maxElements的值是什么,x.get(0)是正确的值并且可以访问?
maxElements可以有任何大于等于1的值(因此它至少包含1个元素)
答案 3 :(得分:0)
理论上是2 ^ 31,但实际上它取决于你的记忆力。