728x90

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제)my_string은 "3 + 5"처럼 문자열로 된 수식입니다. 문자열 my_string이 매개변수로 주어질 때, 수식을 계산한 값을 return 하는 solution 함수를 완성해주세요.

 

 

 

 

 

풀이)

class Solution {
    public int solution(String my_string) {
        int answer = 0;
        
        String[] str = my_string.split(" ");

        answer += Integer.parseInt(str[0]);

        for(int i=1; i<str.length; i++){
            if (str[i].equals("+")){
                answer += Integer.parseInt(str[i+1]);
            } else if (str[i].equals("-")) {
                answer -= Integer.parseInt(str[i+1]);
            }
        }
        return answer;
    }
}

공백으로 문자열을 나누면 무조건 0의 위치에 있는 문자열 배열은 무조건 정수이므로 먼저 answer에 값을 더해주고

index가 1부터 공백으로 나눈 str의 길이 만큼

+가 나올때에는 +위치의 다음번을 정수형으로 변환해서 더해주고

-가 나올때에는 -위치의 다음번을 정수형으로 변환해서 빼주면 된다.

728x90