DEV/알고리즘

[프로그래머스 Lv.1] 문자열 다루기 기본 Java

Imvory 2020. 7. 10. 15:04

문제설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요.

예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다.

 

제한사항

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.

 

입출력 예

s return
"1234" true
"a234" false

Solution

class Solution {
    public boolean solution(String s) {
        if(s.length()==4 || s.length()==6) {
			for(int i=0; i<s.length(); i++) {
				char c = s.charAt(i);
				if(!Character.isDigit(c)) {//숫자가 아닐경우 false 리턴
					return false;
				}
			}
			return true;
		}else return false;
    }
}

다른사람 풀이 - 정규식 사용

import java.util.*;

class Solution {
  public boolean solution(String s) {
        if (s.length() == 4 || s.length() == 6) return s.matches("(^[0-9]*$)");
        return false;
  }
}