Java ArrayList trimToSize() 方法

定义和用法

trimToSize() 方法将列表的容量减小到恰好能够容纳列表中所包含的元素数量。

这个方法不会产生可见的效果,但它可以用来减少列表的内存使用量。

当创建一个 ArrayList 时,除非构造函数中指定了其他数字,否则默认会为 10 个元素预留空间。即使列表中并没有 10 个元素,这个空间仍然会被预留。从列表中移除元素可能会留下这些元素原本占用的空间。如果你没有充分利用 ArrayList 的容量,那么就会有一些内存被浪费,如果你的程序中使用了大量的 ArrayList,这种浪费可能会累积起来。你可以使用 trimToSize() 方法来回收这些未使用的内存。

相关页面

教程:Java 数组

教程:Java ArrayList

实例

将列表的容量减小到与列表大小完全一致:

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    cars.trimToSize(); // 将容量调整为恰好容纳4个元素
    System.out.println(cars); // 输出列表内容,但不会显示容量变化
  }
}

亲自试一试

语法

public void trimToSize()