기타/프로그래밍 분류

Java - 24.Vector,Array,Hashtable

zelkova 2011. 7. 15. 09:11

Vector
 vector 클래스는 배열과 마찬가지로 여러 개의 원소를 갖는다. 즉 원소를 가지는데, 이 원소는 인덱스를 통해 접근한다. 그러나 배열은 원소의 자료형이 일원화 되어야 하는 것과는 달리 각 원소들이 서로 다른 자료형을 가질 수 있다. 단, Vector 클래스의 원소로는 기본 타입은 올 수 없고 참조 타입만 올 수 있다. 만약 기본 타입의 원소를 Vector원소로 저장하려면 각 기본 타입을 해당 Wapper 클래스 타입으로 변환하여 Vector의 원소로 활용한다.



사용방법
Vector vector new Vector(20);
String str = "인스턴스1";
UserClass uc= new UserClass("1234", 3, "inst1");
Integer num = new Integer("20");

vector.add(str);
vector.add(uc);
vector.add(num);

System.out.println( ((String)vector.element(0)).charAt(1));
System.out.println( ((Student)vector.element(0)).getName());
System.out.println( ((Integer)vector.element(0)).intValue(1));

Array
 Array 클래스를 이용하여 동적 배열을 생성하고 접근할 수 있다. Array 클래스의 메서드는 모두 static 메서드이며 public final class Array{...}로 정의되어 있어 상속이 불가능한 클래스이다. Array 클래스는 이미 만들어진 배열을 활용하여 정렬, 이진 탐색 등의 기능을 사용하고자 할 때 유용하다.

사용방법
String[] txt = {"또치", "혁거세", "막거세"};
Arrays.sort(txt);

for(int i = 0; i < txt.length; i++)
   System.out.println((i+1) + " : " + txt[i);

int txtArrayIndex = Arrays.binarySearch(txt,"또치");
System.out.println(txtArrayIndex);


HashTable
앞에서 배운 컬랙션들은 원소에 접근하기 위한 키로 원소값 또는 컬렉션의 고정값인 인덱스를 이용했다. HashTable은 키를 사용자가 지정할 수 있는 기능을 제공한다는 점에서 앞선 컬렉션과 다르다. 이를 위해 HashTable의 각 원소는 사용자 정의 키값과 원소값으로 구성된다.


사용방법
Hashtable hashTable = new Hashtable();
hashtable1.put("1","또오치");
hashtable1.put("2","혁거세");
hashtable1.put("3","마이크");

   System.out.println("헤쉬 테이블 1의 원소값" :  StrArray[0]);

String[] hArray = new String[hashTable.size()];
   strArray[i] = (String)hashtable.get(new Integer(i+1).toString());
   System.out.println("헤쉬 테이블 2의 원소값" :  strArray[1]);

반응형

'기타 > 프로그래밍 분류' 카테고리의 다른 글

Java - 25.AWT 컴포넌트  (0) 2011.07.16
Java - 24.GUI프로그램  (0) 2011.07.15
Java - 23.StringBuffer,StringTokenizer클래스  (0) 2011.07.15
Java - 22문자열  (0) 2011.07.12
Java - 21자바 표준 라이브러리  (0) 2011.07.09