-
[ 자바성능튜닝이야기 58p~ ]
- Collection : 가장 상위 인터페이스
- Set : 중복허용하지 않는 집합 처리용 인터페이스
- SortedSet : 오름차순 갖는 Set 인터페이스
- List : 순서가 있는 집합 처리용 인터페이스이므로 인덱스가 있어 위치 지정하여 값 찾기 가능
- 중복허용, ArrayList 많이 씀
- Queue : 객체 여러개 처리 전 담아서 처리할 때 사용하는 인터페이스
- FIFO(First In First Out)
- 블로킹큐는 크기가 지정된 큐에 더이상 공간이 없을 때, 공간이 생길 때까지 대기하도록 만들어진 큐
- 큐 구현 클래스 2가지 일반, 컨커런트
리스트, 큐 둘다 순서 있는데 왜 큐씀??
> List의 가장 큰 단점은 데이터가 많은 경우 처리시간이 늘어난다는 점(지우면 한칸씩 옮겨야함)- Map : 키와 값 의 쌍으로 구성된 객체 집합 처리용 인터페이스
- SortedMap : 키를 오름차순으로 정렬하는 Map 인터페이스
- HashSet : 데이터를 해쉬테이블에 담는 클래스로 순서 없이 저장됨
- TreeSet : red-black 트리에 데이터 담음, 담으면서 정렬되므로 HashSet보다 느림
- LinkedHashSet : 해쉬테이블에 데이터 담는데 저장된 순서에 따라 순서 결정됨
- Vector : 객체 생성시 크기 지정할 필요 없는 배열클래스
- ArrayList : Vector와 비슷하지만 동기화 처리 되어있지 않음
- LinkedList : ArrayList와 동일하지만, Queue인터페이스를 구현했기 때문에 FIFO 큐 작업 수행
'자바_스프링' 카테고리의 다른 글
spring boot 2.7.x에서의 swagger와 redisson 충돌 (0) 2023.03.15 재고시스템으로 알아보는 동시성이슈 해결방법 강의 노트 (0) 2023.03.15 TDD연습하기(2) (자바 플레이그라운드 with TDD, 클린 코드) (0) 2023.02.16 TDD연습하기(1) (자바 플레이그라운드 with TDD, 클린 코드) (0) 2023.02.16 TDD란 (자바 플레이그라운드 with TDD, 클린 코드) (0) 2023.02.15 댓글