본문 바로가기
JAVA/Programmers

JAVA 프로그래머스 [숨어있는 숫자의 덧셈 (2)] 자바

by tripleup 2023. 6. 11.
728x90
반응형

[프로그래머스] 코딩테스트 연습 -> 코딩테스트 입문 -> 숨어있는 숫자의 덧셈 (2)

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


해결 과정

 

우선 split을 통해 숫자가 아닌(^0-9)것을 기준으로 나누어 String  배열 s를 생성한다.

 

이때 배열에 공백이 생길 수도 있는데,

그 이유는 만약 문자열이 ^0-9로 시작하게 되면, 배열의 0인덱스에 공백이 생기기 때문이다.

 

그래서 반복문을 돌면서 ! s[i].isEmpty()를 사용해서 배열이 공백이 아닐때(숫자일 때),

answer에 s[i]값을 Integer.parseInt()를 이용해서 더해주면 된다.

 

그렇게 되면 문자열에 자연수가 없는 경우 처음에 answer을 초기화한 그대로 0이 return 된다.

 

소스 코드

 

class Solution {
    public int solution(String my_string) {
        
		int answer = 0;
		String[] s = my_string.split("[^0-9]+");
        
		for (int i = 0; i < s.length; i++) {
            
            if (!s[i].isEmpty()) {
                answer+= Integer.parseInt(s[i]);
            }
		}
		return answer;
	}
}
728x90
반응형

댓글