Vector란?
자바에서 제공했던 레거시 클래스
Collections 프레임워크가 포함되어 있지 않던 초기 자바 버전에서 정의한 인터페이스
현재는 재구성 및 설게 되어 Collections 프레임워크와 호환
Vector의 특징
필요에 따라 크기를 동적으로 조절할 수 있는 동적배열을 구현
인덱스를 이용해 배열에 액세스 가능
동기화
Vector vs ArrayList
ArrayList와 같은 구조를 가지지만,
동기화 여부가 가장 큰 차이점이다.
Vector는 동기화되기 때문에 멀티스레드 환경에서 안정성을 가지지만,
ArrayList는 그렇지 못하다.
동기화로 인해 Vector에는 하나의 스레드만 접근할 수 있어,
ArrayList보다 속도는 느리다.
그렇기 때문에 멀티스레드 환경에서는 ArrayList를 사용하는 것이 유리할 수 있다.
Vector의 이용
//선언
Vector<Object> vector = new Vector<>();
//값 추가하기
vector.add(object);
vector.add(index, object);
//값 조회하기
vector.get(index);
//값 변경하기
vector.set(index, object);
//값 제거하기
vector.remove(index); //인덱스 값으로 제거
vector.removeAllElements(); //모든 데이터 제거
vector.clear(); //모든 데이터 제거
//크기 구하기
int size = vector.size();
'JAVA(SPRINGBOOT)' 카테고리의 다른 글
[JPA] PAGEABLE (0) | 2023.03.13 |
---|---|
[SPRINGBOOT] 좋아요 수 표현 (0) | 2023.03.09 |
[JAVA] GENERIC PROGRAMMING (2) | 2022.12.22 |
[JAVA] 비교연산자 (==, equals) (0) | 2022.12.16 |
[JAVA] REQULAR EXPRESSION(정규 표현식) (0) | 2022.12.16 |