\
2021.03.29 - [JAVA/JAVA(자바)설치 및 툴 이용(ECLIPSE)] - [JAVA] 자바 설치 및 환경 하기 JDK 1.8 버전
개발 환경
Window 10
JDK 1.8
이클립스 2020_03 버전
전화 번호를 예제로 HashMap 을 알아보자
map 안에 map 이 들어간 구조를 나탄내다
전화 번호를 그룹별로 지정하는 코드 이고 클래스 명만 신경 쓰면 된다 그대로 복붙 하면된다
package ex08.collection.map;
import java.util.*;
class HashMapEx3 {
static HashMap phoneBook = new HashMap();
public static void main(String[] args) {
addPhoneNo("친구", "이자바", "010-111-1111");
addPhoneNo("친구", "김자바", "010-222-2222");
addPhoneNo("친구", "김자바", "010-333-3333");
addPhoneNo("회사", "김대리", "010-444-4444");
addPhoneNo("회사", "김대리", "010-555-5555");
addPhoneNo("회사", "박대리", "010-666-6666");
addPhoneNo("회사", "이과장", "010-777-7777");
addPhoneNo("세탁", "010-888-8888");
printList();
} // main
// 그룹을 추가하는 메서드// 그룹에 이름이 있는지 업는지
static void addGroup(String groupName) {
if(!phoneBook.containsKey(groupName))
phoneBook.put(groupName, new HashMap());
}
// 그룹에 전화번호를 추가하는 메서드
static void addPhoneNo(String groupName, String name, String tel) {
addGroup(groupName);
HashMap group = (HashMap)phoneBook.get(groupName);
group.put(tel, name); // 이름은 중복될 수 있으니 전화번호를 key로 저장한다.
}
static void addPhoneNo(String name, String tel) {
addPhoneNo("기타", name, tel);
}
// 전화번호부 전체를 출력하는 메서드
static void printList() {
Set set = phoneBook.entrySet();
Iterator it = set.iterator();
while(it.hasNext()) {
Map.Entry e = (Map.Entry)it.next();
Set subSet = ((HashMap)e.getValue()).entrySet();
Iterator subIt = subSet.iterator();
System.out.println(" * "+e.getKey()+"["+subSet.size()+"]");
while(subIt.hasNext()) {
Map.Entry subE = (Map.Entry)subIt.next();
String telNo = (String)subE.getKey();
String name = (String)subE.getValue();
System.out.println(name + " " + telNo );
}
System.out.println();
}
} // printList()
} // class
출력 결과
[JAVA]IO 페키지 (Input/Output)/InputStream/ 연산하기 (0) | 2021.04.09 |
---|---|
[JAVA-API]HashMap /예제02 (0) | 2021.04.08 |
[JAVA-API]HashMap / TreeMap /MAP 구조// 소스 코드 (0) | 2021.04.08 |
[JAVA-API]Stack 구조 이해 하기 예제/goForward/goBack (0) | 2021.04.08 |
[JAVA-API] LinkList / ArrayList 속도비교 /자바 자료구조/예제소스 포함 (0) | 2021.04.08 |