상세 컨텐츠

본문 제목

[java] 동적 자료구조 (Dynamic Data Structure) 연습문제#1

java

by ~지우~ 2021. 7. 15. 17:30

본문

728x90

오늘은 「java_an_introduction_to_problem_solving_and_programming_6th_edition」 909페이지 18번 문제를 풀어보겠습니다.



<문제>

출처: java_an_introduction_to_problem_solving_and_programming_6th_edition    

 

HashMap을 사용하여 입력된 숫자가 몇 번 입력되었는지 출력하는 코드를 작성하면 됩니다.

이때 key는 입력된 숫자이고, value는 입력된 숫자의 입력된 횟수로 지정하였습니다.

 

import java.util.Scanner;
import java.util.ArrayList;
import java.util.HashMap;
public class NumberOccerence {

	public static void main(String[] args) {
		String n;
		Scanner keyboard = new Scanner(System.in);
		HashMap<String, Integer> number = new HashMap<String, Integer>();
		ArrayList<String> list = new ArrayList<String>();
		
		while(true) {
			n = keyboard.next();
			if(n.equals("-1")) break;
			list.add(n);
		}
		for(String key:list) number.put(key, number.getOrDefault(key, 0)+1);
		
		for(String result:number.keySet()) {
			System.out.println(String.format("The number %s occurs %s times", result, number.get(result)));
		}
		
		keyboard.close();
	}

}
728x90

관련글 더보기

댓글 영역