[programmers] 숨어있는 숫자의 덧셈 (1)

J-Cheol·2023년 11월 7일
0

프로그래머스

목록 보기
11/27
post-thumbnail

문제


프로그래머스 문제링크

풀이 코드


class Solution {
    public int solution(String my_string) {
        int answer = 0;
        int i = 0;
        String num = my_string.replaceAll("\\D", "");
        while(i < num.length())
        {
            char c = num.charAt(i);
            answer += c-48;
            i++;
        }
        return answer;
    }
}

리뷰


  1. 문자열 안에 숫자만을 더 하여 반환하는 문제입니다.
  2. 문자열에는 소문자, 대문자, 숫자로 구성되어 있습니다.
    2-1. replaceAll정규표현식을 사용하여 숫자를 제외한 소문자, 대문자를 ""으로 치환하였습니다.
    2-2. \\D는 숫자가 아닌경우만을 허용하는 정규표현식으로 숫자를 제외한 곳만을 relace 타겟으로 잡았습니다.
  3. charAt를 통해 문자열들을 char c에 넣었습니다.
    3-1. char 형태로 되어있기 때문에 int에 넣어줄 때 아스키코드 값 -48을 하여 answer에 저장했습니다.
    3-2. 차곡차곡 쌓인 answer는 문자 안에 있는 숫자가 전부 더해졌으며, 이를 반환했습니다.
profile
신입 백엔드 개발자(JAVA, Spring Boot, MYSQL)

0개의 댓글