반응형
collection
Java Collection 에는 List
, Map
, Set
인터페이스를 기준으로 여러 구현체가 존재한다. 이에 더해 Stack
과 Queue
인터페이스도 존재한다. 이러한 collection 을 사용하여, DataStructure 을 직접 구현하지 않고 편하게 이용할 수 있다. 또한, 배열과 다르게, 객체를 보관할 공간을 미리 정하지 않아, 프로그램의 공간적 효율성을 높인다.
List
List
인터페이스를 직접@Override
를 통해 사용자가 정의하여 사용할 수 있고, 대표적인 구현체로는ArrayList
가 존재한다. 이외에도LinkedList
가 있다.
Map
- 대표적인 구현체로는
HashMap
이 존재한다. key-value 구조로 되어있고 Map 에 대한 은 자료구조의 hashtable 이라 생각하면 된다. key를 기준으로 중복된 값을 저장하지 않고, 순서를 보장하지 않는다. - key 에 순서를 보장하기 위해
LinkedHashMap
을 사용한다.
- 대표적인 구현체로는
Set
- 대표적인 구현체로
HashSet
이 존재한다. value 에 대해 중복된 값을 저장하지 않는다. Map 의 key-value 구조에서 key 대신 value 가 들어가 value 를 key 로 하는 자료구조이다. 순서를 보잘해주지 않지만, 순서를 보장하기 위해LinkedHashSet
을 사용한다.
- 대표적인 구현체로
Stack
과Queue
Stack
객체는 직접new
키워드로 사용할 수 있고,Queue
인터페이스는 JDK 1.5 부터LinkedList
에new
키우드를 적용해 사용할 수 있다.
참고문헌
https://github.com/JaeYeopHan/Interview_Question_for_Beginner
반응형
'스프링, 자바' 카테고리의 다른 글
7주차 과제: 패키지 (0) | 2020.12.27 |
---|---|
자바 상속 (2) | 2020.12.26 |
JVM 에 대해서 (2) | 2020.12.24 |
백기선 라이브 스터디 5주차 과제 클래스 (0) | 2020.12.19 |
스프링 IoC 컨테이너와 빈 개념 (0) | 2020.12.18 |