[Java] Vector사용방법

Minhee kang·2021년 10월 21일
0

Java

목록 보기
4/7
package com.use.java;
import java.util.*;

public class test {
	
	//Vector는 ArrayList와 마찬가지로 Vector내부에 값이 추가되면 자동으로 크기가 조절되며 그다음 객체들은 한 자리씩 뒤로 이동
	//Vector와 ArrayList 차이 
	//=>Vector는 멀티 스레드가 동시에 이 메소드들을 실행할 수 X. 그래서 멀티 스레드 환경에서 안전하게 객체를 추가하고 삭제할 수 있음 
	
	
	//동기화란 여러 개의 스레드가 한 개의 자원을 사용하고자 할 때 해당 스레드만 제외하고 나머지는 접근을 못하도록 막는 것
	//Vector의 장점이자 단점 => 항상 동기화됨! => 스레드가 1개일때도 동기화를 하기 때문에 ArrayList보다 성능이 떨어짐 
	//Arraylist는 기본적인 기능은 벡터와 동일하나 자동 동기화 기능이 빠져있고, 동기화 옵션이 존재
	
	public static void main(String[] args) {
		//선언 
		Vector v1 = new Vector();//타입 미설정 Object로 선언된다.
		Vector<Integer> num2 = new Vector<Integer>(); //타입설정 int타입만 사용가능
		Vector<Integer> num3 = new Vector<>(); //new에서 타입 파라미터 생략가능
		Vector<String> v2 = new Vector<String>(10);//초기 용량(capacity)지정
		Vector<Integer> v3 = new Vector<Integer>(Arrays.asList(1,2,3)); //초기값 지정 
		
		//값 추가
		Vector<Integer> v = new Vector<Integer>();
		v.add(3); //값 추가
		v.add(null); //null값도 add가능
		v.add(1,10); //index 1뒤에 10 삽입
		
		//값 출력 get(index)메서드 사용 
		Vector<Integer> list = new Vector<Integer>(Arrays.asList(1,2,3));

		System.out.println(list.get(0));//index 0의   출력 : 1
						
		for(Integer i : list) { //for문을 통한 전체출력
		    System.out.println(i);
		}
		//1
		//2
		//3
		
		//크기 구하기
		System.out.println(v.size()); //Vector 자료 개수 : 3
		System.out.println(v.capacity()); //Vector 물리적크기 : 10
		
		//값 삭제 remove(index) 사용 
		v.remove(1);  //index 1 제거
		v.removeAllElements(); //모든 값 제거
		v.clear();  //모든 값 제거
		
	}
}

0개의 댓글

관련 채용 정보