본문 바로가기
개발 관련 강의 정리/유튜브

[개발자 허니비Honeybee] 내가 공부하려고 만든 기술면접 질문/답변 모음 JAVA편 정리

by 코딩개발 2023. 7. 4.
728x90
반응형

1. JAVA의 대표 Collection 종류

List, Map, Set, Stack, Queue

Collection 인터페이스 아래, 특정한 기법으로 구현된 자료구조가 들어간다.

List라는 인터페이스에 ArrayList, LinkedList가 들어갈 수 있다.

 

2. List : 배열과 비슷한 자바의 자료형

- ArrayList : 자바의 Vector를 개성한, 배열로 구현된 List / 연산 수행시간 속도는 배열과 같다.

- LinkedList : 다음 노드의 주소를 기억하고 있는 List / 삽입, 삭제 간단 / 첫 번째 노드부터 탐색해 나가야 하므로 느림

 

3. Map

- HashMap, TreeMap, LinkedHashMap

HashTable을 사용하며 Key값에 해시함수를 적용하여 나온 index에 Value를 저장한다.

- 특징 : 중복 허용X, 순서X

- TreeMap은 Red-Black Tree 자료구조를 이용한 Map이고, Tree 구조이기 때문에 어느정도 순서 보장

- LinkedHashMap은 LinkedList로 구현된 HashMap이다. List로 구현되서 순서 보장하지만 LinkedList 특성상 랜덤 접근에서는 느릴 수 있다.

 

4. Set

- HashSet, TreeSet, LinkedHashSet

- HashSet은 HashMap에서 Key값이 없는 자료형

- 값이 포함되어 있는지 아닌지만 관심

- 특징 : 순서 보장X, 중복값X

- TreeSet은 Red-Black Tree 자료구조를 이용한 Set이다,

- LinkedHashSet은 LinkedList로 구현된 HashSet으로 순서 보장

 

6. Array, ArrayList

  길이 크기(사이즈)
Array length 사용 고정 int, byte, char 등과 같은 Primitive type과 Object 모두 가능
ArrayList size() 사용 동적인 배열 Object 만 가능

 

 


참고

https://www.youtube.com/watch?v=Xk9z01AHEQ4&ab_channel=%EA%B0%9C%EB%B0%9C%EC%9E%90%ED%97%88%EB%8B%88%EB%B9%84Honeybee

728x90
반응형

댓글