본문 바로가기

IT/프로그래머스

프로그래머스 영어가 싫어요 - Java

반응형

 

 

문제

 

 

 

 

 

풀이

value라는 string 문자열을 하나 선언한 후 numbers의 한 글자씩 추가해준 뒤, one이면 1이 리스트에 들어가도록 if문을 넣어준다.

리스트를 Long 타입으로 변환한 후 return 해준다.

 

 

charAt()

String으로 저장된 문자열 중 한 글자만 선택하여 Char 타입으로 변환.

(String 문자열에서 한글자씩만 value 값에 추가하기 위함)

 

 

 

Long.parsLong();

string 문자열을 long으로 변환.

 

 

 

 

 

코드

import java.util.*;

class Solution {
    public long solution(String numbers) {
        String value = "";
		ArrayList<String> answer_list = new ArrayList<>();
        String answer_s = "";
        long answer = 0;
		
        for(int i=0; i<numbers.length(); i++){
            value += numbers.charAt(i);
            
            if(value.equals("zero")){
                answer_list.add("0");
                value = "";
            }else if(value.equals("one")) {
            	answer_list.add("1");
            	value = "";
            }else if(value.equals("two")) {
            	answer_list.add("2");
            	value = "";
            }else if(value.equals("three")) {
            	answer_list.add("3");
            	value = "";
            }else if(value.equals("four")) {
            	answer_list.add("4");
            	value = "";
            }else if(value.equals("five")) {
            	answer_list.add("5");
            	value = "";
            }else if(value.equals("six")) {
            	answer_list.add("6");
            	value = "";
            }else if(value.equals("seven")) {
            	answer_list.add("7");
            	value = "";
            }else if(value.equals("eight")) {
            	answer_list.add("8");
            	value = "";
            }else if(value.equals("nine")) {
            	answer_list.add("9");
            	value = "";
            }
        }
        answer_s = String.join("", answer_list);
        answer = Long.parseLong(answer_s);
        
        return answer;
    }
}
반응형