JAVA 제네릭 N 컬렉션

robin Han·2023년 1월 6일
0

Study Java

목록 보기
3/3

컬렉션: 요소들의 객체들의 저장소

  • 요소들의 개수에 따라 요소의 위치 자동 이동
  • 배열이 고정되어있지않아 용이
  • 다양한 객체들 삽입, 삭제, 검색등 관리 용이

Set< E > : 순서가 유지되지 않는 데이터의 집합으로 데이터의 중복 불가.
List < E > : 순서가 있는 데이터의 집합으로 데이터값 중복 가능.
Queue < E > : 순서가 있는 데이터의 집합으로 데이터값 중복 가능.
Map < K , V >: key 와 value 로 이루어져있는 집합으로 순서가 없고, key는 유니크 값으로 중복불가, Value는 중복 가능.

컬렉션은 제네릭기법으로만 구현됨
컬렉션 요소는 객체만 가능 : int, double등 기본 타입들 불가.

제네릭 기법: 특정 타입으로만 하지않고 여러 종류로 바꿀수있게 클래스나 메소드를 일반화 하는 방법.

타입 매개변수 : < E element > , < K key > , < V value >
제네릭 예시) Stack< E > , Stack < Integer >

Wrapper 객체란...

primitive types: 문자, 숫자, null, undefined
wrapper 객체: string, number, boolean

let hi = 'hi' 
hi.typeof 
hi.length 

primitvie type 을 객체로 사용하기 위해서 사용하는 클래스. 메소드를 사용할때 매개변수를 객체형태로만 받는다고할때 사용하는 클래스.

ArrayList < Integer > intarray = new ArrayList< Integer >();

Vector

1) 배열의 길이 제한 극복을 위해 만들어진 클래스로 자동으로 길이 조절이 해준다

2) Vector에는 객체 또는 null이 가능한데, 기본 타입은 wrapper 객체로 만들어서 저장 가능

3) 객체 삭제 하면 자동으로 위치 이동

사용 예시 )
Vector < Integer > v = new Vector< Integer > ();
< E > 로 타입 매개변수 입력 해야한다.

삽입 할때 : v.add(element);, v.add (index , element)

검색 할때 요소 찾기 : v.get(index);//인덱스에 있는 요소 반환

검색 할때 인덱스 찾기 : v.indexOF(object);
//요소의 인덱스 반환 없으면 -1

v.clear()// 모든 요소삭제

v.remove(index);/해당 인덱스에 있는 요소 삭제

v.size

v.toArray();//해당 객체를 배열로 리턴.

Arraylist

가변 크기 배열을 구하는 클래스, 벡터와 비슷한 점들이 많다.

다른점: 벡터는 동기화 기능으로, 스레드를 하나씩 밖에 사용 하지 못한다.
Arraylist는 이러한 기능이 없어서 빨른 속도로 실행 가능 하다. 따로 동기화 코드를 작성 해주어야 한다.

Iterator

HashMap

Collection

구체화

0개의 댓글