반응형
111은 숫자지만
1AA1는 숫자가 아니다
하지만 숫자와 문자가 섞인 숫자를 String으로 받는다고 할 때
숫자만 구별해내는 방법이 있을까?
Double.parseDouble(String값);
을 사용하면 되는데
문자열을 Double 타입의 숫자로 바꿔버리는 것이다
(소수가 있는 경우에도 숫자이기 때문에..)
당연히 String에 문자가 들어가 있으면
Double type으로 바꿀 수 없어 Exception이 발생하게 되는데
여기서!! 메소드를 만들어 숫자인 경우에는 true를 넘겨주고
숫자가 아니어서 Exception이 발생한 경우에는 false를 넘겨주면
바로 숫자, 문자 판별이 가능하게 되는 것이다
예제는 다음과 같다
숫자인 111.22 를 String으로 넘겨주면 true로 출력이 되고
문자를 섞어 넣어주면 false가 출력되는 것이 보인다
전체 코드는 다음과 같으니 한번 테스트해 보려면 이걸 참고하면 된다
public class test {
public boolean chkVal(String strVal) {
try {
Double.parseDouble(strVal);
return true;
} catch (Exception e) {
return false;
}
}
public static void main(String[] args) {
test t1 = new test();
System.out.println(t1.chkVal("11A.22"));
}
}
반응형
'IT > Java' 카테고리의 다른 글
자바 배열 복사하는 방법 (0) | 2019.08.08 |
---|---|
자바 List 정렬하는 방법(오름차순, 내림차순) (0) | 2019.08.08 |
파라미터(Parameter) 아규먼트(Argument) 차이 알아보기 (0) | 2019.08.07 |
자바 AWT 이벤트 추가하기 (0) | 2019.08.02 |
자바 Panel이란? 그리고 사용하는 방법 (0) | 2019.08.02 |
댓글