해쉬맵은 Key,Value를 가지고,
Hashtalbe는 동기화를 지원 HashMap: 동기화 지원하지않음
import java.util.Collection;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Set;
public class HashtableTest {
public HashtableTest() {
}
public void start() {
//Key,Value를 가진다.
//Hashtalbe:동기화 지원
//HashMap: 동기화 지원하지않음
//회원정보 4명을 hashtable에다가 저장
Hashtable<String, Member> ht =new Hashtable<String, Member>();
Member m1 = new Member(100, "홍길동", "010-1111-2222", "서울시 중구");
ht.put("홍길동", m1);
ht.put("세종대왕", new Member(200,"세종대왕", "010-1234-5678","서울시 종로구"));
ht.put("이순신", new Member(300,"이순신", "010-5678-456","서울시 서대문구"));
ht.put("김정희", new Member(400,"김정희", "010-4438-4526","서울시 마포구"));
ht.put("세종대왕2", new Member(200,"세종대왕2", "010-1234-5678","서울시 종로구"));
ht.put("이순신2", new Member(300,"이순신2", "010-5678-456","서울시 서대문구"));
ht.put("김정희2", new Member(400,"김정희2", "010-4438-4526","서울시 마포구"));
//key기준으로 가져오기
Member vo = ht.get("세종대왕");
vo.memeberPrn();
//------------Map의 Key목록을 구하기 :Set으로 리턴된다.
Set<String> KeyList = ht.keySet();
Object[] obj = KeyList.toArray();
for(Object o: obj) {
System.out.println(o);
}
System.out.println("----------------------------------");
Iterator<String> ii = KeyList.iterator();
while(ii.hasNext()) {
//System.out.println(ii.next());
Member v = ht.get(ii.next());
v.memeberPrn();
}
System.out.println("---------전체 value 목록을 불러오기-----------");
Collection<Member> value = ht.values();
Iterator<Member> iii = value.iterator();
while(iii.hasNext()) {
Member vvv = iii.next();
vvv.memeberPrn();
}
}
public static void main(String[] args) {
new HashtableTest().start();
}
}
TreeMap : key, value를 가진다. key 기준으로 정렬
import java.util.Collection;
import java.util.Iterator;
import java.util.NavigableSet;
import java.util.Set;
import java.util.TreeMap;
public class TreeMapTest {
public TreeMapTest() {
TreeMap<String, Member> ht =new TreeMap<String, Member>();
Member m1 = new Member(100, "홍길동", "010-1111-2222", "서울시 중구");
ht.put("홍길동", m1);
ht.put("세종대왕", new Member(200,"세종대왕", "010-1234-5678","서울시 종로구"));
ht.put("이순신", new Member(300,"이순신", "010-5678-456","서울시 서대문구"));
ht.put("김정희", new Member(400,"김정희", "010-4438-4526","서울시 마포구"));
ht.put("세종대왕2", new Member(200,"세종대왕2", "010-1234-5678","서울시 종로구"));
ht.put("이순신2", new Member(300,"이순신2", "010-5678-456","서울시 서대문구"));
ht.put("김정희2", new Member(400,"김정희2", "010-4438-4526","서울시 마포구"));
Member m = ht.get("이순신");
m.memeberPrn();
System.out.println("------------KeySet으로 목록구하기-------------");
Set<String> set = ht.keySet();
Iterator<String> ii=set.iterator();
while(ii.hasNext()) {
Member mm = ht.get(ii.next());
mm.memeberPrn();
}
System.out.println("------descendingKeySet()--------");
NavigableSet<String> descKey = ht.descendingKeySet();
Iterator<String> iii = descKey.iterator();
while(iii.hasNext()) {
Member mm = ht.get(iii.next());
mm.memeberPrn();
}
System.out.println("-----------------value를 이용한 목록구하기-------");
Collection<Member> value = ht.values();
Iterator<Member> iiii = value.iterator();
while(iiii.hasNext()) {
Member vvv = iiii.next();
vvv.memeberPrn();
}
}
public static void main(String[] args) {
new TreeMapTest();
}
}
'language > java이론' 카테고리의 다른 글
[java,자바] java.io, InputStream메소드 정리 (0) | 2021.01.16 |
---|---|
[java,자바] JFrame Event 설정하는법/채팅프로그램 만들기 (0) | 2021.01.13 |
[자바,java] TreeSet 이론 및 실습 (0) | 2021.01.09 |
[java,자바] HashSet이론 및 실습 (0) | 2021.01.09 |
[java,자바] 스택(Stack) 설명 및 실습 (0) | 2021.01.08 |
최근댓글