알고리즘
프로그래머스 - 문자열 다루기 기본
Heidong
2022. 6. 6. 14:37
반응형
내 풀이
public class P_23 {
public boolean sol(String s) {
boolean ans = true;
if(s.length() != 4 && s.length() != 6) return false;
System.out.println(s.length());
try {
Integer.parseInt(s);
ans = true;
} catch (Exception e) {
ans = false;
}
return ans;
}
public static void main(String[] args) {
// 문자열 다루기 기본
P_23 p = new P_23();
String s = "123344";
System.out.println(p.sol(s));
}
}
길이 체크는 if문으로 숫자 체크는 try catch문으로 했다.
다른 사람 풀이
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;
}
}
예외에서 NumberFormatExceprion을 잡아준 모습
import java.util.*;
class Solution {
public boolean solution(String s) {
if (s.length() == 4 || s.length() == 6) return s.matches("(^[0-9]*$)");
return false;
}
}
matches를 사용해서 정규식으로 판별
class Solution {
public boolean solution(String s) {
return (s.length() != 4 && s.length() != 6) || (s.split("[0-9]").length > 0) ? false:true;
}
}
삼항연산자를 바탕으로 풀이
반응형