HashMap 예제 : 나라 이름과 인구를 입력하세요.(예: Korea 5000)
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
//나라 이름과 인구를 입력하세요.(예: Korea 5000)
//나라 이름, 인구 >> Korea 5000
//나라 이름, 인구 >> USA 1000000
//나라 이름, 인구 >> Swiss 2000
//나라 이름, 인구 >> France 3000
//나라 이름, 인구 >> 그만
//
//인구 검색 >> France
//France의 인구는 3000
//인구 검색 >> 스위스
//스위스 나라는 없습니다.
//인구 검색 >> 그만
public class Blog {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
Scanner sc = new Scanner(System.in);
String s;
int i;
System.out.println("나라 이름과 인구를 입력하세요.(예: Korea 5000)");
while (true) {
s = sc.next();
if (s.contains("그만")) {
break;
}
try {
i = sc.nextInt();
} catch (Exception e) {
System.out.println("숫자가 아닙니다");
sc.nextLine(); // 스캐너에 남아있는 찌꺼기 청소
// 안하면 다음 반복 next() 함수에 영향
continue;
}
System.out.println("나라 이름, 인구 >> " + s + " " + i);
map.put(s, i);
}
while (true) {
System.out.println("인구 검색 >>");
s = sc.next();
if (s.contains("그만")) {
break;
} else {
if (map.containsKey(s)) { // 대신 map.get(s) != null 해도 됨
System.out.println(s + "의 인구는 " + map.get(s));
} else {
System.out.println(s + "나라는 없습니다.");
}
}
}
sc.close();
}
}
댓글
댓글 쓰기