programmers.co.kr/learn/courses/30/lessons/12918
Java
public class Solution {
public boolean solution(String s) {
if(s.length() == 4 || s.length() == 6) {
return s.matches("-?\\d+(\\.\\d+)?");
} else
return false;
}
}
다른 분 코드로 알게 된 방법
- Integer.parseInt 사용
public class Solution {
public boolean solution(String s) {
if(s.length() == 4 || s.length() == 6) {
try {
int x = Integer.parseInt(s);
return true;
} catch (Exception e) {
return false;
}
} else
return false;
}
비슷하게 Double.parseDouble로도 가능하다 해서 코드를 아래와 같이 작성해 제출해봤는데, 테스트 케이스 1개에서 실패가 떴다... 뭐가 잘못된 건지 찾아봐야겠다.
public class Solution {
public boolean solution(String s) {
if(s.length() == 4 || s.length() == 6) {
try {
Double.parseDouble(s);
return true;
} catch (Exception e) {
return false;
}
} else
return false;
}
- charAt 사용
public class Solution {
public boolean solution(String s) {
boolean answer = true;
if (s.length() != 4 && s.length() != 6) return false;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) < '0' || s.charAt(i) > '9') return false;
}
return answer;
}
노트패드에 썼던 걸 복붙하니까 들여쓰기가 이상하게 적용돼서 다시 수정했다.
코드블록 작성할 때는 정상적으로 적용돼 있는데..... 티스토리 너무 불편...
'알고리즘 > Programmers' 카테고리의 다른 글
[Programmers] 문자열 내 p와 y의 개수 (0) | 2021.02.02 |
---|---|
[Programmers] 서울에서 김서방 찾기 (0) | 2021.01.22 |
[Programmers] k번째 수 (0) | 2020.10.03 |
[Programmers] 두 정수 사이의 합 (0) | 2020.10.03 |
[Programmers] 나누어 떨어지는 숫자 배열 (0) | 2020.10.03 |
댓글