Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

마다가스카르

[Java] subList 사용법 본문

Java

[Java] subList 사용법

밥많이먹는사람 2023. 12. 10. 06:17

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

 

List에서 fromIndex~toIndex까지의 요소를 뽑아내서 반환하기 위해 사용된다. 예를 들면

List<String> names = new ArrayList<String>();
names.add("A");
names.add("B");
names.add("C");
names.add("D");
names.add("E");
List<String> exampleSubList = names.subList(1, 3);
System.out.println(exampleSubList);

위 코드의 결과는 다음과 같다. 

["B", "C"]

원본 List였던 names의 1번째, 2번째 요소를 뽑아내 반환한다.

 

내가 가장 최근에 subList를 이용한 코드는 다음과 같다. 앞뒤로 필요없는 맥락은 삭제했다.

            DataList.subList(0, 7).clear();
            // DataList의 0~6번째 요소 삭제

비효율적인 방법인 것 같아 나중에 코드를 수정했지만, 이 코드를 작성했던 목적은 DataList라는 원본 리스트의 0~6번째 요소를 삭제하기 위함이었다. 

여기서 subList는 원 리스트와 연결되어 있단 사실을 알 수 있다. DataList.subList(0,7)가 DataList와 완전히 독립적이었다면 clear()를 하거나 말거나 DataList에는 영향이 없어야 하겠지만 실제로는 그렇지 않다.