반응형
  • List의 메서드 설명 + ArrayList 사용 예제

List 란?

  • 순서가 있는 데이터의 집합, 중복허용

List의 메서드 정리

add(Object o)

  • o를 list의 가장 마지막 자리에 추가, 성공시 true return

add(int index, Object o)

  • 해당 인덱스 자리에 o 추가, 성공시 true return

set(int index, Object o)

  • 해당 인덱스 자리의 값을 o로 수정, 수정되기 전 값을 return

remove(int index)

  • 해당 인덱스 자리의 값 삭제, 삭제되는 값을 return

remove(Object o)

  • o 삭제, 성공시 true return

clear()

  • list의 모든 값 삭제

get(int index)

  • 해당 인덱스 자리의 값 return

size()

  • list의 크기 return

contains(Object o)

  • list에 o가 포함되어 있는지 여부 return

conntainsAll(Collection c)

  • list에 Collection이 모두 포함되어 있는지 여부 return

subList(int startIndex, int endIndex)

  • startIndex부터 endIndex - 1번째 까지의 값을 추출하여 list 형태로 return

addAll(Collection c)

  • list에 Collection 타입 객체를 한번에 추가

addAll(int index, Collection c)

  • list의 index 자리부터 Collection을 모두 추가

iterator()

  • list에 순서대로 접근하기 위한 iterator 반환

List의 종류

  • List의 종류로는 ArrayList, LinkedList 등이 존재
  • ArrayList는 배열 형태로 데이터를 저장하고, LinkedList는 자신의 앞,뒤 자료의 주소정보를 갖는 형태로 데이터를 저장
  • ArrayList는 자료가 순차적일때 유리하고, LinkedList는 자료의 삽입, 삭제가 빈번할 때 유리함

ArrayList 예제

package CollectionTest.ListTest;

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

public class Main {

    public static void main(String[] args) {

        List<String> clist = new ArrayList<>(); // 이런식으로 타입을 지정해 줄 수 있고
        List alist = new ArrayList();       // 타입을 안 지정해 주면 int, String 등 상관없이 등록 가능
        alist.add(3);
        alist.add(2);
        alist.add(1);
        alist.add("hello");

        System.out.println(alist.toString());       // 다음과 같이 한번에 출력할 수도 있고
        for(int i = 0; i < alist.size(); i ++) {    // 이처럼 반복문을 사용해 출력할 수도 있음
            System.out.println(alist.get(i));
        }

        alist.remove(0);        // 0번째 index에 있는 값 삭제
        System.out.println(alist.toString());

        alist.add(1, "hi");     // 1번째 index에 "hi" 추가
        System.out.println(alist.toString());

        alist.set(1, "bye");    // 1번째 index값을 "bye"로 변경
        System.out.println(alist.toString());

        List blist = new ArrayList();
        blist.addAll(alist.subList(1,3));   // alist의 1~2값을 blist에 넣어줌
        System.out.println(blist.toString());
    }
}

결과

[3, 2, 1, hello]
3
2
1
hello
[2, 1, hello]
[2, hi, 1, hello]
[2, bye, 1, hello]
[bye, 1]
반응형

↓ 클릭시 이동

복사했습니다!