본문으로 바로가기

컬렉션 프레임워크

category Backend/Java 2018. 12. 17. 10:08

컬렉션 프레임워크


다수의 데이터를 쉽게 처리할 수 있는 표준화 된 방법을 제공하는 클래스들의 모음

기존 배열형태의 자료 저장에서 좀 더 다양한 데이터들을 저장하기 위해 사용된다.


인터페이스 < ㅡ 자식클래스


Map (HashMap)


key와 value의 쌍으로 데이터를 저장한다. ㅡ > 딕셔너리


객체 생성하기

  • key로 사용할 데이터의 형식과 값으로 사용할 데이터의 형식(클래스 이름)을 객체 생성시 <> 안에 명시한다. 제너릭스
  • key는 문자열을 사용하는 것이 보통
  • 값의 경우 상황에 따라 다르다
  • 기본 자료형에 대한 처리가 필요할 경우 Wrapper클래스를 사용.

Map<String, 클래스> map = new HashMap<String, 클래스>();


데이터 저장하기

map.put(key, value);


데이터 조회하기

// value가 리턴된다.

map.get(key);


저장된 데이터의 수

int count = map.size();


List (ArrayList)

  • ArrayList는 List 인터페이스를 상속받는 클래스
  • 데이터를 이름표 없이 무제한으로 보관가능
  • ArrayList에 추가되는 데이터는 순차적으로 배열과 같은 인덱스 번호를 부여 받음
  • 상위 인터페이스 형으로 선언하고 ArrayList 클래스로 객체를 할당
  • 선언과 할당 시에는 보관하고자 하는 자료형에 대한 제너릭스를 명시

객체 생성하기

List<저장할 데이터의 클래스이름> list = new ArrayList<저장할 데이터의 클래스이름>();


데이터 추가, 조회, 삭제

int i = list.add(데이터); // 데이터가 추가된 위치의 인덱스가 리턴

list.add(i, 데이터);       // 특정 위치에 데이터 추가 <- 기존의 데이터는 뒤로 밀린다.

데이터 = list.get(i);     // 인덱스를 통한 데이터 꺼내기

list.remove(i);            // 인덱스를 통한 데이터 삭제 <- 삭제된 이후의 데이터들이 앞으로 한 칸씩 이동한다.

int count = list.size();  // 추가된 데이터의 수

'Backend > Java' 카테고리의 다른 글

JSON  (0) 2018.12.18
파일 입출력  (0) 2018.12.17
예외처리  (0) 2018.12.14
Package, Library, ClassPath  (0) 2018.12.11
Inner Class  (0) 2018.12.11