> Java > java지도 시간 > Java에서 ArrayList를 더 작은 ArrayList로 분할하는 방법은 무엇입니까?

Java에서 ArrayList를 더 작은 ArrayList로 분할하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-11-15 03:39:02
원래의
502명이 탐색했습니다.

How to Split an ArrayList into Smaller ArrayLists in Java?

Java에서 ArrayList를 더 작은 ArrayList로 분할

큰 ArrayList를 여러 개의 작은 ArrayList로 분할하는 것은 다양한 프로그래밍 시나리오에서 필수적입니다. Java에서 이를 달성하려면 subList(int fromIndex, int toIndex) 메소드를 활용할 수 있습니다.

subList 메소드

subList 메소드를 사용하면 원래 목록. fromIndex부터 시작하여 toIndex를 포함하지 않고 지정된 범위의 요소에 대한 뷰를 생성합니다.

사용 예

설명하려면 다음 코드를 고려하세요.

List<Integer> numbers = new ArrayList<>(Arrays.asList(5, 3, 1, 2, 9, 5, 0, 7));

List<Integer> head = numbers.subList(0, 4);
List<Integer> tail = numbers.subList(4, 8);

System.out.println(head); // prints "[5, 3, 1, 2]"
System.out.println(tail); // prints "[9, 5, 0, 7]"
로그인 후 복사

비보기 만들기 하위 목록

잘린 목록을 조회할 수 없도록 해야 하는 경우 하위 목록에서 새 목록을 만들기만 하면 됩니다. 예는 다음과 같습니다.

// Chops a list into non-view sublists of length L
static <T> List<List<T>> chopped(List<T> list, final int L) {
    List<List<T>> parts = new ArrayList<>();
    final int N = list.size();
    for (int i = 0; i < N; i += L) {
        parts.add(new ArrayList<>(list.subList(i, Math.min(N, i + L))));
    }
    return parts;
}

List<Integer> numbers = Collections.unmodifiableList(Arrays.asList(5, 3, 1, 2, 9, 5, 0, 7));
List<List<Integer>> parts = chopped(numbers, 3);

System.out.println(parts); // prints "[[5, 3, 1], [2, 9, 5], [0, 7]]"
로그인 후 복사

이 메소드는 보기가 아닌 하위 목록 목록을 반환하므로 원본 목록에 영향을 주지 않고 수정할 수 있습니다.

위 내용은 Java에서 ArrayList를 더 작은 ArrayList로 분할하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿