반응형
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
2
3
4
5
6
7
8
9
10
11
12
|
class Solution {
public int solution(String s) {
int answer = 0;
int error = 0;
// s의 길이가 1 이상 5 이하일 경우
if(s.length()>=1 && s.length()<=5){
answer = Integer.parseInt(s);
return answer;
}else return error;
}
}
|
cs |
- 문자열 String을 int로 형변환은 불가
- 강제 형변환 메소드인 Integer.parseInt()를 사용하여 입력한 answer의 값을 정수형태로 변환
- s의 길이가 1 이상 5 이하일 경우에만 변환할 수 있도록 s의 길이를 체크하는 length()메소드 사용
- 하지만 s의 길이가 1 이상 5 이하가 아닐 경우 return값 처리가 애매하여 별도의 error값으로 0을 출력하도록 함
(제한조건에 s가 0으로 시작하지 않기 때문에 길이가 1인 0은 없다고 판단)
○ 좋아요를 많이 받은 풀이
- Integer.parseInt사용하지 않고 charAt() 사용하여 알고리즘으로 해결해보기
반응형
'코테 > 프로그래머스' 카테고리의 다른 글
소수 찾기/java/프로그래머스/Level1 (0) | 2020.02.15 |
---|---|
행렬의 덧셈/java/프로그래머스/Level1 (0) | 2020.02.12 |
평균 구하기/java/프로그래머스/level1 (0) | 2020.02.12 |
수박수박수박수박수박수?/java/프로그래머스/Level1 (0) | 2020.02.09 |
직사각형 별찍기/java/프로그래머스/Level1 (0) | 2020.02.08 |