본문 바로가기
개발 공부/Java

자바의정석 11강 - 컬렉션 프레임웍

by 코딩호야 2022. 6. 19.

1. 컬렉션 프레임웍

- 컬렉션 - 여러 객체(데이터)를 모아 놓은것 

- 프레임웍 - 표준화 , 정형화된 체계적인 프로그래밍방식

- 컬렉션 프레임웍 - 다수의 객체를 다루기위한 표준화된 프로그래밍 방식

- List : 중복 O , 순서 O     ( waiting list )

- Set :  중복 X , 순서 X     ( 집합)

- Map  : 순서 X , key (ID) 는 중복 X , value (비번) 는 중복 O

 

1. 1 ArrayList ( 배열사용 )

ArrayList :  list 인터페이스 구현했기 때문에, 순서-중복 O, 배열을 사용.

배열의 길이를 적절히 지정하는것이 좋음.

<배열의 장단점>

- 장점 : 배열의 구조가 간단하고 데이터를 읽는데 걸리는 시간( 접근시간 , access time ) 이 짧다.

 

- 단점1 :  배열의 크기를 변경해야 하는 경우 새로운 배열을 생성후 데이터를 복사해야함.

- 단점2 :   비순차적(중간에 넣는것)인 데이터의 추가, 삭제에 시간이 많이 걸린다.

   그러나 순차적인 데이터추가(끝에 추가) 와 ( 끝부터 삭제) 는 빠르다.

 

1. 2 LinkedList 

- 배열의 단점을 보완 : 불연속적으로 존재하는 데이터를 연결 

< ArrayList   vs     LinkedList   - 성능비교 >

- 순차적으로 데이터를 추가/삭제 ArrayList 가 빠름

- 비순차적으로 데이터를 추가/삭제 LinkedList 가 빠름

- 접근시간 (access time) 은 ArrayList 가 빠름

1. 3 스택과 큐

- 스택은 ArrayList 로 사용하는게 유리 ( 배열 )

- 큐는 LinkedList  로 사용하는게 유리