Language/Java

aVector의 객체 추가, 변경, 삭제

원2 2021. 3. 31. 12:26
728x90
반응형

import java.util.Vector;

public class Test002 {
	/*
	 * Vector의 단점
	 * Vector는 항상 동기화되는 장점이자 단점을 가진다
	 * 스레드가 1개일 때도 동기화를 하기 때문에 어레이리스트보다 성능이 떨어진다.
	 * 어레이리스트는 기본적인 기능은 Vector와 동일
	 * 자동 동기화 기능이 빠져있고, 동기화 옵션이 조네
	 * Vector에 비해 속도가 더 빠르기 때문에 Vector비해 많이 쓴다.
	 */
	public static void main(String[] args) {
		Vector<Integer> aVector = new Vector<Integer>(); // 최대는 5개지만 초과하면 5개씩 늘어난다.
		aVector.add(1);
		aVector.add(5);
		aVector.add(200);
		aVector.add(3500);
		aVector.add(-999);
		aVector.add(20);
		for (Integer Temp : aVector) {
			System.out.print(Temp + " ");
		}
		System.out.println();
		
		aVector.add(3, 999); // 3번째 위치에 999를 넣어라 /추가/
		
		for (Integer Temp : aVector) {
			System.out.print(Temp + " ");
		}
		System.out.println();
		
		aVector.remove(2); // 2번째 위치를 삭제 뒤에 있던 객체가 앞으로 땡겨옴 
		
		for (Integer Temp : aVector) {
			System.out.print(Temp + " ");
		}
		System.out.println();
		
		aVector.removeAllElements(); // 모든걸 지운다.
		
		System.out.println("----");
		for (Integer Temp : aVector) {
			System.out.print(Temp + " ");
		}
		System.out.println("----");
	}
	
	public static void main4(String[] args) {
		Vector<Integer> aVector = new Vector<Integer>(5); // 최대는 5개지만 초과하면 5개씩 늘어난다.
		//aVector.add(1);
		System.out.println(aVector.capacity());  // 용량 : 확보한 자리 수
		System.out.println(aVector.size()); 	 // 크기 : 사용중인 자리 수
	}
	
	public static void main3(String[] args) {
		Vector<Integer> aVector = new Vector<Integer>(); // ()사이에 용량을 설정할 수 있다.
		//aVector.add(1);
		System.out.println(aVector.capacity());  // 용량 : 확보한 자리 수
		System.out.println(aVector.size()); 	 // 크기 : 사용중인 자리 수
	}  // 용량이 MAX가 10인데 11개를 넣으면 옹량이 20으로 올라간다.

	public static void main2(String[] args) {
		Vector aVector = new Vector(); // Object 형
		
		aVector.add(5);
		aVector.add("술 한잔 ㄱ?");
		aVector.add(3.14);
		aVector.add(-999);
		aVector.add(20);
	
	for (Object Temp : aVector) {
		System.out.println(Temp);
	}
}

	public static void main1(String[] args) {
		Vector<Integer> aVector = new Vector<Integer>(); // <> 은 제네렉 Integer은 래퍼클래스.

		aVector.add(5);
		aVector.add(200);
		aVector.add(3500);
		aVector.add(-999);
		aVector.add(20);

		for (Integer Temp : aVector) {
			System.out.println(Temp);
		}
	}

}

Vector 동기화 보장

동기화 : 동기화가 되지않으면 내가 a객체를 쓸 때 다른녀석이 같이 써버려서 결과값의 오류가 날 수 있지만

벡터는 동기화가 보장되어있다.

728x90
반응형

'Language > Java' 카테고리의 다른 글

HashSet  (0) 2021.03.31
HashMap 예제1  (0) 2021.03.31
HashMap  (0) 2021.03.31
숫자의 기본정렬과 역순정렬  (0) 2021.03.31
Vector  (0) 2021.03.31
Comparator와 Comparable  (0) 2021.03.31