컬렉션
1. 컬렉션이란? 객체들을 요소로 하는 저장소
- 요소 개수에 따라 크기 자동 조절 ( 객체 배열과 차이점 )
- 요소의 삽입, 삭제에 따른 위치 자동 이동(가변 크기의 컨테이너)
- 객체만 요소가 된다.
잠시상기) 기본 타입배열은 객체로 관리한다. 그럼 기본타입의 배열도 컬렉션 요소로 가능한가?
2. 제네릭(generics)기법 : 특정 타입이 아닌 여러 종류의 타입으로 쓸 수 있게 '클래스나 메소드'를 다루는 기법
- 기본 타입 불가 cf) 자동박싱을 해주긴 하지만 Wrapper 클래스를 애초부터 써주자
- 형식 : 제네릭<타입>
ex) Stack<Integer> : 정수만 다루는 스택 //제네릭을 추후 직접 만들 수도 있다.
ex) Stack<String> : 문자열만 다루는 스택 - 타입 : E Element, T Type, V Value, K key
- 제네릭 타입 추론
3. Vector<E>
- 벡터 컬렉션-> n-tuple
- import java.util.Vector
- 객체 컨테이너(길이 자동으로 늘려줌)
- 삽입(add), 검색(get), 삭제(remove)가 자유롭다. (기본 메소드)
삽입요소
- 객체, null
- 기본타입은 Wrapper 객체로 만들어 삽입 ->이제 JVM이 알아서 기본타입들 박싱해줌.
ex) Vector<Integer> v = new Vector<Integer>(7);
v.add(5); v.add(1); v.add(2); v.add(2,100); v.get(1); v.remove(1);
v.size(); //요소 개수
v.capacity(); //벡터용
4. 컬렉션을 매개변수로 받는다?
ex)
public void printVector(Vector<Integer> v) {
for(int i=0; i<v.size(); i++) {
int n = v.get(i); // 벡터의 i 번째 정수
System.out.println(n);
}
}
Vector<Integer> v = new Vector<Integer>(); // Integer 벡터 생성
printVector(v); // 메소드 호출
'Programming > Java' 카테고리의 다른 글
7장. 컬렉션과 제네릭 #3 HashMap 컬렉션, LinkedList 컬렉션 (0) | 2020.06.16 |
---|---|
7장. 컬렉션과 제네릭 #2 ArrayList 컬렉션, Iterator 인터페이스 (0) | 2020.06.16 |
6장. 패키지와 활용 #2 주요 클래스 (0) | 2020.06.15 |
6장. 패키지와 활용 #1 패키지 (0) | 2020.06.14 |
5장. 상속 #6 인터페이스 vs 추상클래스 (0) | 2020.06.14 |
댓글