프로그래머스 문제풀어보기
[Lv.0] 숨어있는 숫자의 덧셈(1)
dantriss
2023. 2. 22. 01:37

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


import java.util.Arrays;
class Solution {
public int solution(String my_string) {
int answer = 0;
String a = my_string.toLowerCase().replaceAll("[a-z]","");
char [] arr = a.toCharArray();
String[] arr2 = a.split("");
for(int i=0; i<arr2.length; i++){
answer += Integer.parseInt(arr2[i]);
}
return answer;
}
}

String a 에 문자열 my_string에 모든 대문자들을 toLowerCase로 소문자로 만든 후 replaceAll을 이용 a-z를 전부 빈칸으로만든다.
그렇게하면 문자열 a에는 숫자들만 남겨지게 되는데 해당 숫자들은 Int가 아니라 string이기 때문에
문자배열로 만들어주고 split("")을 이용해 각각 분리해준다.
그 후 반복문을 이용해 배열의 길이만큼 반복해주면서,
answer에는 문자열 배열 arr2[]를 Integer.parseInt를 이용해 int로 변환해서 전부 더해준다.