ensureCapacity()
方法的语法为:
arraylist.ensureCapacity(int minCapacity)
在这里, arraylist是ArrayList
类的对象。
sureCapacity()参数
ensureCapacity()
采用单个参数。
- minCapacity-数组列表的指定最小容量
sureCapacity()返回值
ensureCapacity()
方法不返回任何值。
示例1:Java ArrayList sureCapacity()
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList languages= new ArrayList<>();
// set the capacity of the arraylist
languages.ensureCapacity(3);
// Add elements in the ArrayList
languages.add("Java");
languages.add("Python");
languages.add("C");
System.out.println("ArrayList: " + languages);
}
}
输出
ArrayList: [Java, Python, C]
在上面的示例中,我们创建了一个名为language的数组列表。注意这一行,
languages.ensureCapacity(3);
在这里, ensureCapacity()
方法调整了arraylist的大小以存储3个元素。
但是,Java中的ArrayList可动态调整大小。也就是说,如果我们在arraylist中添加3个以上的元素,它将自动调整自身大小。例如,
示例2:ensureCapacity()的工作
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList languages= new ArrayList<>();
// set the capacity of the arraylist
languages.ensureCapacity(3);
// Add elements in the ArrayList
languages.add("Java");
languages.add("Python");
languages.add("C");
// add 4th element
languages.add("Swift");
System.out.println("ArrayList: " + languages);
}
}
输出
ArrayList: [Java, Python, C, Swift]
在上面的示例中,我们使用ensureCapacity()
方法调整数组列表的大小以存储3个元素。但是,当我们在arraylist中添加第4个元素时,arraylist会自动调整大小。
那么, 如果arraylist可以自动调整自身大小 , 为什么还要使用guaranteeCapacity()方法调整arraylist的大小呢?
这是因为如果我们使用ensureCapacity()
调整数组列表的大小,那么将立即以指定的容量调整数组列表的大小。否则,每次添加元素时都会调整arraylist的大小。