기기

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

CS/알고리즘 풀이

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

notEmpty 2019. 12. 6. 21:39

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

 

문자열 123, -123, +123 과 같은 문자열을 정수로 바꾸기 

 

https://programmers.co.kr/learn/courses/30/lessons/12925

 

코딩테스트 연습 - 문자열을 정수로 바꾸기 | 프로그래머스

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 0으로 시작하지 않습니다. 입출력 예 예를들어 str이 1234이면 1234를 반환하고, -1234이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.

programmers.co.kr

 

핵심 

제일 첫 번째 문자에 따라 +.- 처리해주면 된다. 

=> 1이나 -1 곱 

 

구조

multi = 1;

if( 첫 문자 알파벳 ) 그대로 숫자로 바꾸고 리턴

else

    if( 첫 문자 '-' )  multi = -1

    부분 문자열 정수로 바꾸고 muti 곱한 값 리턴 




추가적으로 더 궁금한 점 있으면 댓글 달아주세요

 

 

코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
class Solution {
  public int solution(String s) {
      int multi=1;
        if(is(s.charAt(0))){
            return Integer.parseInt(s);
        }else {
            if(s.charAt(0== '-') {
               multi = -1;
            }
            return multi * Integer.parseInt(s.substring(1,s.length()));
        }
        
    }
    static boolean is (char input) {
        return input >= '0' && input <= '9';
    }
}
cs