Map

"Java Stuty"

Posted by Chungman on March 25, 2021

Map 예제

MapMain

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package Java0325.Lecture14.generic;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;

/*
 *  Map : key, value의 쌍으로 구성된 데이터의 집합, key에대한 순서(x), 중복(x)
 *  구현클래스 : HashMap, TreeMap
 *  
 */
public class MapMain {

	public static void main(String[] args) {
		
		// key : ID value : PASSWORD
		Map<String, String> map = new HashMap<>();
		map.put("aaa", "1111");
		map.put("bbb", "2222");
		map.put("ccc", "3333");
		map.put("ddd", "4444");
		
		Scanner sc = new Scanner(System.in);
		System.out.println("PASSWORD 변경서비스입니다.");
		System.out.print("ID를 입력하세요.");
		String id = sc.nextLine();
		if(!map.containsKey(id)) {
			System.out.println("입력하신 ID [" + id + "] 는 존재하지 않습니다.");
			System.out.println("서비스를 종료합니다.");
			System.exit(0);
		}
		System.out.println("현재 PASSWORD를 입력하세요.");
		String password = sc.nextLine();
		
		if(!map.get(id).equals(password)) {
			System.out.println("PASSWORD가 다릅니다.");
			System.out.println("서비스를 종료합니다.");
			System.exit(0);
		}
		
		System.out.print("변경할 PASSWORD를 입력하세요. : ");
		String newPassword = sc.nextLine();
		map.put(id, newPassword);
		
		System.out.println("PASSWORD가 변경되었습니다.");
		
		System.out.println("<< 전체 회원정보 출력 >>");
		/*
		Set<Map.Entry<String, String>> entrySet = map.entrySet();
		for(Map.Entry<String, String> e : entrySet) {
			System.out.println("ID : " + e.getKey() + ", PASSWORD : " + e.getValue());
		}
		*/
		Set<String> keys = map.keySet();
		for(String key : keys) {
			System.out.println("ID : " + key + ", PASSWORD : " + map.get(key));
		}
	}

}