>  기사  >  Java  >  Java의 ArrayList.subList() 함수를 사용하여 지정된 ArrayList 범위의 하위 목록을 얻습니다.

Java의 ArrayList.subList() 함수를 사용하여 지정된 ArrayList 범위의 하위 목록을 얻습니다.

PHPz
PHPz원래의
2023-07-24 11:17:121717검색

Java의 ArrayList.subList() 함수를 사용하여 ArrayList의 지정된 범위의 하위 목록을 가져옵니다.

Java 프로그래밍에서 ArrayList는 매우 일반적으로 사용되는 데이터 구조로 일련의 데이터를 저장하는 데 사용할 수 있으며 요소를 추가할 수 있습니다. 또는 동적으로 삭제됩니다. 때로는 ArrayList의 일부 요소를 가져와야 하는 경우가 있는데, 이는 subList() 함수를 사용하여 얻을 수 있습니다.

subList() 함수의 정의는 다음과 같습니다.

List<E> subList(int fromIndex, int toIndex)

여기서 fromIndex는 하위 목록의 시작 인덱스(포함)를 나타내고 toIndex는 끝을 나타냅니다. 하위 목록의 인덱스(포함되지 않음). 이 함수를 호출하면 fromIndex에서 toIndex-1까지 하위 목록을 가져올 수 있습니다. 반환된 하위 목록은 여전히 ​​원본 ArrayList를 가리키는 새 List 인스턴스이며, 하위 목록에 대한 수정 사항은 원본 ArrayList에 반영됩니다. fromIndex表示子列表的起始索引(包含),toIndex表示子列表的结束索引(不包含)。通过调用这个函数,我们可以获得从fromIndextoIndex-1的子列表。返回的子列表是一个新的List实例,它仍然指向原来的ArrayList,并且对子列表的修改会反映到原来的ArrayList上。

下面是一个对ArrayList进行子列表操作的示例代码:

import java.util.ArrayList;
import java.util.List;

public class ArrayListExample {

    public static void main(String[] args) {
        // 创建一个包含整数的ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        numbers.add(5);
        
        // 获取ArrayList的子列表
        List<Integer> subList = numbers.subList(1, 4);
        
        System.out.println("原始ArrayList中的元素:");
        for (Integer num : numbers) {
            System.out.print(num + " ");
        }
        System.out.println();
        
        System.out.println("子列表中的元素:");
        for (Integer num : subList) {
            System.out.print(num + " ");
        }
        System.out.println();
        
        // 修改子列表中的元素
        subList.set(0, 10);
        subList.set(1, 20);
        
        System.out.println("修改过后的原始ArrayList中的元素:");
        for (Integer num : numbers) {
            System.out.print(num + " ");
        }
        System.out.println();
    }
}

运行上述代码,输出结果为:

原始ArrayList中的元素:
1 2 3 4 5 
子列表中的元素:
2 3 4 
修改过后的原始ArrayList中的元素:
1 10 20 4 5 

从运行结果可以看出,通过subList()函数获取的子列表对原始ArrayList是有影响的。当我们修改子列表中的元素时,原始ArrayList中对应的元素也会被修改。

需要注意的是,subList()返回的子列表不能进行增加或删除操作,否则会抛出UnsupportedOperationException

다음은 ArrayList에 대한 하위 목록 작업의 샘플 코드입니다.

rrreee

위 코드를 실행하면 출력 결과는 다음과 같습니다. 🎜rrreee🎜실행 결과에서 볼 수 있듯이 subList() 함수를 통해 얻은 하위 목록에는 원본 ArrayList에 특정 영향을 미칩니다. 하위 목록의 요소를 수정하면 원본 ArrayList의 해당 요소도 수정됩니다. 🎜🎜subList()에서 반환된 하위 목록은 추가하거나 삭제할 수 없습니다. 그렇지 않으면 UnsupportedOperationException 예외가 발생합니다. 🎜🎜결과적으로 ArrayList.subList() 함수를 사용하면 ArrayList 데이터를 특정 범위에 따라 정확하게 값을 계산할 수 있어 후속 작업이 용이해집니다. 이를 사용할 때 하위 목록의 요소를 올바르게 가져오고 수정하고 처리하려면 인덱스 범위와 원본 ArrayList에 미치는 영향에 주의해야 합니다. 🎜

위 내용은 Java의 ArrayList.subList() 함수를 사용하여 지정된 ArrayList 범위의 하위 목록을 얻습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.