Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- JPQL
- pointcut
- 알고리즘
- 그리디
- 스프링
- 스프링 핵심 기능
- springdatajpa
- 김영한
- 스프링 핵심 원리
- Spring Boot
- JDBC
- spring
- http
- 자바
- 백준
- Proxy
- 인프런
- kotlin
- db
- Android
- QueryDSL
- Greedy
- jpa
- Thymeleaf
- java
- Exception
- Servlet
- AOP
- SpringBoot
- transaction
Archives
- Today
- Total
개발자되기 프로젝트
[프로그래머스] 문자열을 정수로 바꾸기 본문
1. 문제
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
제한 조건
- s의 길이는 1 이상 5이하입니다.
- s의 맨앞에는 부호(+, -)가 올 수 있습니다.
- s는 부호와 숫자로만 이루어져있습니다.
- s는 "0"으로 시작하지 않습니다.
입출력 예
예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다.
str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.
2. 문제 정리
- 문자열을 정수로 바꾸기
- parseInt vs valueOf
- partInt -> 반환 타입 : primitive
- valueOf -> 반환 타임 : Integer
3. 코드
class Solution {
public int solution(String s) {
if (s.charAt(0) == '+'){
return Integer.parseInt(s.substring(1, s.length()));
}else if(s.charAt(0) == '-') {
return -1*Integer.parseInt(s.substring(1, s.length()));
}else return Integer.parseInt(s);
}
}
4. 직접 구현
- 그냥 parseInt쓰자니 너무 심심하다. 직접 구현하자 ㅋㅋㅋ
- '0' 은 정수형으로 48이다.
- 즉 '숫자'는 '숫자'에서 48을 빼면 정수형으로 표현이 가능하다.
- 또는 'n' - '0'도 가능
- 이 때 자리수를 고려하여 쭉 더해주면 끝.
class Solution {
public int solution(String s) {
if (s.charAt(0) == '+'){
return stringToInt(s.substring(1, s.length()));
}else if(s.charAt(0) == '-') {
return -1*stringToInt(s.substring(1, s.length()));
}else return Integer.parseInt(s);
}
private int stringToInt(String stringNumber){
int result = 0;
for (int i= stringNumber.length()-1; i>=0; i--){
result += (int) ((stringNumber.charAt(i) - 48) * Math.pow(10, stringNumber.length() - 1 - i));
}
return result;
}
}
5. GitHub : 211213 StringToInt
'코테준비' 카테고리의 다른 글
[프로그래머스] 이상한 문자 만들기 (0) | 2021.12.14 |
---|---|
[프로그래머스] 시저암호 (0) | 2021.12.13 |
[프로그래머스] 수박수박수? (0) | 2021.12.13 |
[프로그래머스] 소수 찾기 (0) | 2021.12.13 |
[프로그래머스] 서울에서 김서방 찾기 (0) | 2021.12.13 |
Comments