송민준의 개발노트

프로그래머스-level1- 문자열 다루기 기본 본문

알고리즘/프로그래머스

프로그래머스-level1- 문자열 다루기 기본

송민준 2019. 11. 17. 16:39

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

 

코딩테스트 연습 - 문자열 다루기 기본 | 프로그래머스

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

programmers.co.kr

문자열 길이와 표현식을 검증하는 문제이다.

 

나는 삼항 연산자와 filter를 활용해서 풀었다. 람다식을 사용해서 풀면 깔끔하니 보기가 좋지만 속도가... 마음에 안든다...^^

class Solution {
  public boolean solution(String s) {
         boolean answer = (s.length() == 4 || s.length() == 6) ? true:false;
		 if((int) s.chars().filter(t -> !Character.isDigit(t)).count() > 0) {answer = false;}
		 return answer;
  }
}

 

참고할 코드

matches는 처음 봤는데 자바스크립트에서 패턴 사용해서 검증하는거랑 비슷하다고 보면 될 것 같다.

깔끔하고 좋은 듯!