문제 출처 : 프로그래머스/연습문제/문자열을 정수로 바꾸기
https://programmers.co.kr/learn/courses/30/lessons/12925
코딩테스트 연습 - 문자열을 정수로 바꾸기
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니
programmers.co.kr
풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class Solution {
public int solution(String s) {
int answer = 0;
//1. 음수의 여부를 확인
boolean po = (s.charAt(0) == '-')? false : true;
//2. 문자열을 정수로 반환
for(int i = 0; i < s.length(); i++) {
if(s.charAt(i) == '-' || s.charAt(i) == '+')
i = 1;
answer = answer * 10 + (s.charAt(i) - 48);
}
return po? 1 * answer : -1 * answer;
}
}
|
cs |
간단한 문제다.
첫번째로 오는 문자가 음수인지 확인한 후
문자열을 정수로 바꿔주게 되는데 s의 맨 앞에는 +나 -가 올 수 있기 때문에 +나 -가 있다면 그 다음 문자부터 정수로 반환하게 된다.
이후 음수라면 -1을 곱해서 리턴 양수이면 그냥 1을 곱해서 리턴한다.
이걸 간단하게 한줄로 표현할 수 있는 메소드가 있는데 Integer.parseInt(s);를 사용하면 바로 문자열을 정수로 바꿔주게 된다.
'프로그래머스 코딩테스트' 카테고리의 다른 글
프로그래머스 코딩테스트 - 탐욕법 - 조이스틱 (0) | 2020.09.15 |
---|---|
프로그래머스 코딩테스트 - 연습문제 - 멀쩡한 사각형 (0) | 2020.08.17 |
프로그래머스 코딩테스트 - 연습문제 - 시저 암호 (0) | 2020.08.12 |
프로그래머스 코딩테스트 - 연습문제 - 수박수박수박수박수박수? (0) | 2020.08.10 |
프로그래머스 코딩테스트 - 연습문제 - 소수 찾기 (0) | 2020.08.10 |