Post

[Java] 여러 컬렉션들의 기능

여러 컬렉션들의 기능

컬랙션

특징: 다수의 참조형 데이터를 더 쉽고 효과적으로 처리할 수 있는 기능
기능: 크기 자동조정/ 추가/ 수정/ 삭제/ 반복/ 순회/ 필터/ 포함확인 등

종류데이터 집합 특징예시
List순서O, 중복OArrayList, LinkedList, Stack
Queue순서O, 선입선출 
Set순서X,중복XHashSet, TreeSet
Map순서X, (Key-중복X,Value) 쌍HashMap, TreeMap

List

공통 메서드

  • 메서드: .add({추가할 값}), .set({수정할 순번}, {수정할 값}), .remove({삭제할 순번}), .toString()- 전체 출력, .clear()

1. ArrayList

필요에 따라 크기가 가변적, 데이터 값으로 목록을 구성

  • 선언: ArrayList intList
  • 생성: new ArrayList();

2. LinkedList

조회 속도 느림, 수정/삭제는 빠름, 주소 값으로 목록을 구성

  • 선언 : LinkedList linkedList
  • 생성 : new LinkedList();
  • 메서드: .add({추가할 순번}, {추가할 값})- 값 중간에 추가

3. Stack

후입선출

  • 선언 : Stack intStack
  • 생성 : new Stack();

메서드

  • 추가 : .push({추가할 값})
  • 조회 : .peek() -상단에 있는 값 반환
  • 꺼내기 : .pop()-상단에 있는 것이 반환되면서 stack에서는 빠짐
  • 크기: .size()

Queue

선입 선출, 순서O 자료구조

  • 선언 : Queue intQueue
  • 생성 : new LinkedList();

메서드

  • 추가 : .add({추가할 값})
  • 조회 : .peek() -하단에 있는 것 반환
  • 꺼내기 : .poll()-하단에 있는 것 반환되면서 Queue에서는 빠짐

Set

순서X, 중복X 자료구조, 바로 생성할 수 없기 때문에 HashSet, TreeSet 사용

  • 선언 : Set intSet
  • 생성 : new HashSet();

메서드

  • 추가 : .add({추가할 값})
  • 삭제 : .remove({삭제할 값})
  • 포함확인 : .contains({포함 확인 할 값})

Map

key-value 형태로 데이터 저장, key는 중복X, HashMap(중복X,순서X, null이 허용됨), TreeMap(key값을 기준으로 오름차순 정렬 가능)

  • 선언 : Map<String, Integer> intMap
  • 생성 : new HashMap<>();

메서드

  • 추가 : .put({추가할 Key값},{추가할 Value값})
  • 조회 : .get({조회할 Key값})
  • 전체 key 조회 : .keySet()
  • 전체 value 조회 : .values()
  • 삭제 : .remove({삭제할 Key값})
This post is licensed under CC BY 4.0 by the author.