문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
문제에서 [s의 길이가 4 혹은 6] 조건을 못봐서 해맸다ㅠㅠ 저는 정규식을 이용하여 풀었는데 다른분들은 더 신박한 방법으로 풀어서 신기하였다.
class Solution {
public boolean solution(String s) {
boolean answer = true;
if(s.length() == 4 || s.length() == 6) {
return s.matches("^[0-9]*$") ;
}
return answer = false;
}
}
// 다른 분들의 코드
class Solution {
public boolean solution(String s) {
if(s.length() == 4 || s.length() == 6){
try{
int x = Integer.parseInt(s);
return true;
} catch(NumberFormatException e){
return false;
}
}
else return false;
}
}