[java] Collection

심심이·2024년 3월 3일
0

java

목록 보기
37/46

Array(배열) 와 Collection(자료구조)의 차이점

1. Array(배열)은 크기가 한정 되어져 있지만
   Collection(구조체)은 크기가 무한정 이다.
   
2. Array(배열)은 배열에 선언되어진 동일한 타입의 데이터만 입력가능하지만  
   Collection(구조체)은 입력되어지는 데이터가 객체(Object)이기만 하면
   어떤것이든지 입력가능하다. 
   
   
==== 배열(Array)과 자료구조(Collection)의 차이점 ====

1. 배열(Array)은 오로지 동일한 데이터 타입만 들어가는 저장소이다.
   배열(Array)은 그 크기가 한번 정해지면 크기를 변경할 수 없다.!!!
 
2. 자료구조(Collection)은 동일한 타입의 객체가 아니더라도
   객체타입이기만 하면 모두 들어가는 저장소이다.
   자료구조(Collection)은 저장되는 크기가 자동적으로 늘어난다.!!!

웹에서 가장 많이 사용하는 대표적인 Collection 타입은 List 계열과 Map 계열이다.

-------------------------------------------------------------------------
              Web에서 주로 사용하는 클래스       게임프로그램밍에서 주로 사용하는 클래스
Interface       (Single Thread 방식)          (Multi Thread 방식)
-------------------------------------------------------------------------           
List 계열    --      ArrayList      ,         Vector
Map  계열    --      HashMap        ,         Hashtable 

ArrayList 및 HashMap 은 Multi Thread를 지원안해주므로 가볍다.
Vector 및 Hashtable 이 Multi Thread를 지원해주므로 무겁다.

Multi Thread를 지원해주냐 안해주느냐만 차이가 있을 뿐 그 나머지 기능은 동일하다.  

Collection 인터페이스를 상속받는 List, set이 있다.

  • List : 순서 O, 중복 O - 리스트를 생각하면 된다 [collection 메소드 가져옴]
    - 1.ArrayList : 배열 사용 List interface 구현, 중간 삭제시 1씩 당김
    인덱스 기반이므로 읽기 성능이 빠르지만 데이터 추가 삭제 성능은 느리다.
    -- 2.LinkedList : 중간 삭제시 3번을 지우더라도 4번으로 바로 이동(데이터 삭제, 수정시 처리속도가 빠름. 읽기 성능은 느리다.)
    리스트에 넣기 : set
    리스트에서 꺼내오기 : get

  • Set : 순서 X, 중복 X - 집합 [collection 메소드 가져옴]
    -1. HashSet
    -2. TreeSet

  • Map : 순서 X, 중복 (키 X, 값 O) -ID는 중복 X, PSWD는 중복 O
    키와 값 한 쌍을 Entry라고 한다.
    -1.HashMap
    -2.TreeMap
    -3.Linked HashMap(순서가 있는 것)
    맵에 넣기 : put
    맵에서 꺼내오기 : get

profile
개발하는 심심이

0개의 댓글

관련 채용 정보