프로그래머스>코딩테스트 연습>2021 카카오 채용연계형 인턴십>숫자 문자열과 영단어 - https://programmers.co.kr/learn/courses/30/lessons/81301
문자열을 숫자로 바꿔서 리턴해야하는 문제이다.
우선 문자열에 매칭되는 숫자를 HashMap에 전부 넣어준다.
그리고 한 글자씩 보면서
one
) 매칭되는 숫자(1
)를 결과값에 넣기위와 같은 로직으로 구성했다!
import java.util.HashMap;
class Solution {
public int solution(String s) {
HashMap<String, Integer> map = new HashMap<>();
map.put("zero", 0);
map.put("one", 1);
map.put("two", 2);
map.put("three", 3);
map.put("four", 4);
map.put("five", 5);
map.put("six", 6);
map.put("seven", 7);
map.put("eight", 8);
map.put("nine", 9);
String result = "";
String tmp = "";
for (int i = 0; i < s.length(); i++) {
char now = s.charAt(i);
if(Character.isDigit(now)){
result += now;
tmp = "";
}else{
tmp += now;
if (map.get(tmp) != null) {
result += map.get(tmp);
tmp = "";
}
}
}
return Integer.parseInt(result);
}
}
딱히 없음