programing

특정 색인 뒤에 있는 목록에서 모든 요소 제거

goodcopy 2022. 11. 6. 10:42
반응형

특정 색인 뒤에 있는 목록에서 모든 요소 제거

List/ArrayList에서 특정 인덱스 뒤에 있는 목록의 모든 요소를 제거할 수 있는 편리한 방법이 있습니까?삭제하기 위해 수동으로 루프를 사용합니다.

좀 더 설명하자면, 10개의 요소 목록이 있는 경우 인덱스 3을 언급한 다음 인덱스 3 이후의 모든 요소를 제거하고 내 목록은 현재 시작하는 4개의 요소(0부터 카운트)로만 구성됩니다.

list.subList(4, list.size()).clear();

서브리스트 조작은 원래 리스트에 반영되므로 인덱스4부터 인덱스4까지 모든 것이 클리어 됩니다.list.size()배타적, 색인 3 이후의 모든 것.범위 삭제는 특히 매뉴얼에서 예로 사용됩니다.

이 방법을 사용하면 명시적 범위 연산(배열에서 일반적으로 존재하는 종류의)이 필요하지 않습니다.목록을 예상하는 연산은 목록 전체가 아닌 subList 뷰를 전달함으로써 범위 연산으로 사용할 수 있습니다.예를 들어, 다음 관용구는 목록에서 요소의 범위를 삭제합니다.

     list.subList(from, to).clear();

sublist() 및 clear()를 사용하여

public class Count
{
    public static void main(String[] args)
    {
        ArrayList<String> arrayList = new ArrayList<String>();
        arrayList.add("1");
        arrayList.add("2");
        arrayList.add("3");
        arrayList.add("4");
        arrayList.add("5");
        arrayList.subList(2, arrayList.size()).clear();
        System.out.println(arrayList.size());
    }
}

언급URL : https://stackoverflow.com/questions/22802232/remove-all-elements-from-a-list-after-a-particular-index

반응형