본문 바로가기
하루하루/프로그래머스 문제풀이

[Lv.0 - Java] 120851. 숨어있는 숫자의 덧셈 (1)

by 키튼햄 2023. 12. 7.

문제

https://school.programmers.co.kr/learn/courses/30/lessons/120851

 

 

 

풀이

my_string을 각각 문자로 나누어서 char 배열에 저장한 후 반복문을 통해 배열을 돌리면서 숫자인지 문자인지를 확인하는 방식으로 만들었다.

 

숫자를 확인하는 방법은 메소드를 몰라서 검색을 통해 알아보았고, Character.isDigit(문자) 를 사용하면 된다는 것을 알게 되었다. 해당 문자가 숫자이면 true, 아니면 false값을 반환한다.

 

또한 숫자여서 ture 값이 반환되어 if문이 실행되었어도 해당 숫자는 현재 char 배열 안의 char 문자이므로 숫자로 바꿔주는 메소드도 필요하다. 이때, Character.getNumericValue(문자) 를 통해 숫자로 바꾸어 answer 변수에 숫자들을 계속 더하여 저장한다.

 

 

코드

class Solution {
    public int solution(String my_string) {
        int answer = 0;
        char[] str = my_string.toCharArray();
        
        for(int i=0; i<str.length; i++){
            if(Character.isDigit(str[i])){
                answer += Character.getNumericValue(str[i]);
            }
        }
        
        return answer;
    }
}