매니저/JAVA1

JAVA1 Vector 예제 (임시저장)

cdprkr2077 2011. 12. 23. 21:03


import java.util.Vector;
import java.util.HashSet;
import java.util.Enumeration;
import java.util.Iterator;

class VectorEx
{
 public static void main(String[] args)
 {
  // 생성
  Vector < String > v = new Vector < String > ( 2, 5 );
               // 기본은 용량 10 증가 2배
  System.out.println( "요소 : " + v.size() );       // 0 요소수
  System.out.println( "용량 : " + v.capacity() );      // 2 용량

  // 추가
  System.out.println( "추가 : " + v.add( "홍길동" ) );
  System.out.println( "추가 : " + v.add( "이순신" ) );
  System.out.println( "추가 : " + v.add( "김유신" ) );
  System.out.println( "추가 : " + v.add( "홍길동" ) );    // 중복 허용

  v.addElement( "이성계" );
  v.add( 2,  "대조영" );
  v.insertElementAt( "강감찬", 3 );
  
  System.out.println( "요소 : " + v.size() );
  System.out.println( "용량 : " + v.capacity() );

  // 삭제
  HashSet < String > hs = new HashSet < String > ();
  hs.add( "홍길동" );
  hs.add( "김유신" );
  hs.add( "연개소문" );
  System.out.println( "삭제 : " + v.removeAll( hs ) );    // 하나라도 지워지면 지웠다고 나옴

  // 출력
  for( int i = 0; i < v.size(); i++ )
  {
   //System.out.println( "출력 : " + v.get( i ) );     // 위,아래 둘중 하나씩만 출력
   System.out.println( "출력 : " + v.elementAt( i ) );
  }
  
  // Enumeration
  Enumeration < String > en = v.elements ();
  while( en.hasMoreElements() )
  {
   System.out.println( "Enumeration : " + en.nextElement() );
  }

  // Iterator
  Iterator < String > it = v.iterator();
  while( it.hasNext() )
  {
   System.out.println( "Inerator : " + it.next() );
  }

  // 배열
  String str[] = new String[ v.size() ];
  v.copyInto( str );
  for( String s : str )
  {
   System.out.println( "배열 : " + s );
  }

  System.out.println( "요소 : " + v.size() );       // 4 요소수
  System.out.println( "용량 : " + v.capacity() );      // 7 용량
  v.trimToSize();
  System.out.println( "요소 : " + v.size() );       // 4 요소수
  System.out.println( "용량 : " + v.capacity() );      // 4 용량
 }
}