[프로그래머스] 문자열을 정수로 바꾸기

Choi Seong Jin·2022년 12월 1일
0

프로그래머스

목록 보기
22/33

문제 링크 : 문자열을 정수로 바꾸기

문제 설명

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.

제한 조건

s의 길이는 1 이상 5이하입니다.
s의 맨앞에는 부호(+, -)가 올 수 있습니다.
s는 부호와 숫자로만 이루어져있습니다.
s는 "0"으로 시작하지 않습니다.

입출력 예

예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다.
str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.


내 풀이

public int solution(String s) {
        int answer = 0;
        int flag = 1;
        int index = 0;
        if(s.charAt(0) == '-'){
            flag = -1;
            index++;
        }else if (s.charAt(0) == '+'){
            flag = 1;
            index++;
        }
        answer = flag * Integer.parseInt(s.substring(index, s.length()));
        return answer;
    }

맨 앞 문자열에 '+'나 '-'가 있냐에 따라서 정수의 부호를 결정하고, 그 다음부터 문자열을 정수로 뱌꿔주는 함수를 사용해서 문제를 풀었다.
다른 사람의 풀이를 보니 parseInt 함수가 부호가 있으면 그대로 문자열을 정수로 바꿔주는 기능이 있었던 것 같다(...) 그래서 return Integer.parseInt(s); 한 줄이면 끝나는 문제였는데 엄청 장황하게 풀어서 코드를 작성한 것 같다...

profile
백엔드 개발자 지망생입니다!

0개의 댓글