컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post Java/자바] 파일 지우기, 디렉토리 삭제 방법; Delete File, Erase Di...TTF 폰트 파일 구조(포맷 형식), 트루타입 글꼴 표준 규약 명세 문서; TrueType...자바스크립트] 정규분포(가우스 분포) 난수(랜덤) 발생 함수; JavaScript Gaus...Java/자바] 프로그램 일시 중지 방법, 실행 잠시 멈추기 메소드; Sleep비베 VB, VBA] 난수 발생 함수; 랜덤 숫자 생성 Random Number Gener...환경변수 저장 하는 법; 윈도우2000 / XP 환경 변수 저장법; Set Environm...DBF 파일(File) 이란? '.dbf' 확장자(Extension) 파일의 용도는?자바스크립트] 배열 크기 사이즈 구하기; 배열 요소 개수; JavaScript Array ...최신 유행 디카 동향 보기, 플리커에서 디카 인기 순위; Digital Camera플리커 주소 (무료 사진 공유 사이트; Flickr), 플릭커 장단점, 프리커

Java/자바] 숫자 여부 판단 메소드(함수); isNum, isDouble

Wednesday, December 06, 2006

주어진 문자열이 숫자로 이루어져 있는지, 즉 숫자로 변환할 수 있는 문자열인지, 알아내야 할 때가 있습니다.

"124" 또는 "5425.8878" 또는 "0.0f" 이런 문자열은 숫자가 될 수 있고
"XYZ000" 이런 것은 당연히 숫자가 될 수가 없습니다.

다음의 isStringDouble(String s) 이라는 메소드로, 이런 판단을 쉽게 할 수 있습니다.

문자열이, 숫자(10진수 실수/정수)인지 아닌지 판단 예제


파일명: Foo.java
public class Foo {
  public static void main(String[] args) {

    String str = "123";
    if (isStringDouble(str))
      System.out.println("숫자입니다.");
    else
      System.out.println("숫자가 아닙니다.");

  }




  public static boolean isStringDouble(String s) {
    try {
        Double.parseDouble(s);
        return true;
    } catch (NumberFormatException e) {
        return false;
    }
  }


}


isStringDouble() 메소드는, 파라미터(인수)로 받은 문자열이, 실수로 변환될 수 있는지 여부를 확인하는 것입니다. 정수도 실수에 포함되기에, 정수인지도 판단할 수 있습니다.

우선 Double.parseDouble() 로 문자열을 실수로 변환해서, 에러가 나면 숫자로 아닌 것으로 판단하여 false(거짓)를 반환하는 식입니다.

그런데
0xFF
이런 16진수는 숫자라는 것을 알지 못하는 한계가 있습니다. 따라서 위의 방법은 10진수 숫자 여부만을 판단할 수 있습니다.


위의 예제, 컴파일 및 실행 결과:
D:\Z>javac Foo.java && java Foo
숫자입니다.

D:\Z>



☞ 자바(Java)

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top