끄적끄적 코딩일지

[Programmers]문자열 다루기 기본(난이도:★★★) 본문

알고리즘

[Programmers]문자열 다루기 기본(난이도:★★★)

BaekGyuHyeon 2022. 5. 16. 19:02

https://programmers.co.kr/learn/courses/30/lessons/12918

 

코딩테스트 연습 - 문자열 다루기 기본

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1

programmers.co.kr

class Solution {
    public boolean solution(String s) {
        return solutionA(s);
    }
    // parseInt, try/catch 사용
    public boolean solutionA(String s){
        boolean answer = true;
        try{
            int tmp = Integer.parseInt(s);
            if(s.length() != 4 && s.length() != 6){
                answer = false;
            }
        }catch(NumberFormatException e){
            answer = false;
        }
        return answer;
    }
    // 정규식 사용
    public boolean solutionB(String s){
        return s.matches("[+-]?[0-9]+") && (s.length() ==4 || s.length() == 6);
    }
    
}