List.subList().clear()로 대체 가능하며 루프에서 호출된 List.remove(index)를 보고합니다.

대부분 List 구현은 많은 요소가 삭제될 경우 대체하는 편이 한층 효율적입니다.

예:


  void removeRange(List<String> list, int from, int to) {
    for (int i = from; i < to; i++) {
        list.remove(from);
    }
  }

빠른 수정을 적용한 후:


  void removeRange(List<String> list, int from, int to) {
    if (to > from) {
      list.subList(from, to).clear();
    }
  }

빠른 수정은 최솟값이 최댓값보다 클 경우 가능한 IndexOutOfBoundsException을 방지하기 위해 범위 검사를 자동으로 추가합니다. 코드에서 이러한 경우가 불가능하면 검사를 제거할 수 있습니다.

2018.2의 새로운 기능