키와 값의 쌍으로 이루어진 요소를 저장하는 자료구조
생성자
Hashtable()
Hashtable(int size)
Hashtable(int size, float fullRatio)
size : 생성될때의 객체 크기
full Ratio : 0.0-1.0사이의 값으로 load factor로 사용, 즉 해쉬테이블의 크기보다 저장될 요소가 많을
경우 fullRatio로 지정된 값이 키값에 곱해져서 사용되게 된다.
예제)
import java.util.*;
class Test1{
public static void main(String args[]){
Hashtable hashtable = new Hashtable();
hashtable.put("1", "하나");
hashtable.put("2", "둘");
hashtable.put("3", "셋");
hashtable.put("4", "넷");
hashtable.put("5", "다섯");
Enumeration e = hashtable.keys();
System.out.println("해쉬테이블의 내용");
while(e.hasMoreElements()){
Object k = e.nextElement();
Object v = hashtable.get(k);
System.out.println("키"+k+"값"+v);
}
System.out.println("다섯은 영어로 무엇일까요? :");
Object v = hashtable.get("5");
System.out.println(v);
}
}
실행결과
해쉬테이블의 내용
키5값다섯
키4값넷
키3값셋
키2값둘
키1값하나
다섯은 영어로 무엇일까요? :
다섯
========================================================================================
가위바위보 예제)
import java.util.*;
class Test1{
public static void main(String args[]){
Random random = new Random();
int user = random.nextInt()%3;
int com = random.nextInt()%3;
if(user<0)
user = user * -1;
if(com<0)
com = com * -1;
Hashtable hashtable = new Hashtable();
hashtable.put("0", "가위");
hashtable.put("1", "바위");
hashtable.put("2", "보");
Object value1 = hashtable.get(String.valueOf(user));
System.out.println("당신은 "+value1+"냈습니다.");
Object value2 = hashtable.get(String.valueOf(com));
System.out.println("컴퓨터는 " + value2+"냈습니다");
System.out.println("=========================");
System.out.println("게임결과");
if(user == com)
System.out.println("둘이서 비겼습니다.");
else if(user ==(com+1)%3)
System.out.println("당신이 이겼습니다.");
else
System.out.println("컴퓨터가 이겼습니다");
}
}
실행화면
당신은 가위냈습니다.
컴퓨터는 보냈습니다
=========================
게임결과
당신이 이겼습니다.
'IT_Programming > Java' 카테고리의 다른 글
파일 클래스 (0) | 2007.01.29 |
---|---|
StringTokenizer 클래스 (0) | 2007.01.29 |
스택 클래스 (0) | 2007.01.29 |
예외처리 (0) | 2006.02.27 |
equals() 메소드와 "==" 비교연산자의 차이 (0) | 2006.02.22 |