Groovy Tip 37 문자열 과 숫자 사이 의 전환

Groovy Tip 37  문자열 과 숫자 사이 의 전환
 
 
 
문자열 과 숫자 사이 의 전환 은 우리 가 프로젝트 에서 반드시 직면 해 야 할 문제 이다. 왜냐하면 우리 가 사용자 인터페이스 에서 얻 은 변수의 값 은 틀림없이 문자열 이기 때문이다.
따라서 우리 가 프로젝트 에서 자주 해 야 할 일 은 첫째, 사용자 의 입력 을 검증 하여 사용자 의 입력 이 숫자 인지 아 닌 지 를 판단 해 야 한 다 는 것 이다.둘째, 만약 그렇다면 우 리 는 그것 을 숫자 로 바 꾸 어 우리 가 계산 할 수 있 도록 해 야 한다.
자바 언어 에서 우 리 는 하나의 문자열 이 숫자 인지 아 닌 지 를 판단 해 야 한다. 기본적으로 두 가지 방법 이 있다. 첫 번 째 는 직접 전환 하 는 것 이다. 만약 에 Exception 이 던 지면 이 문자열 은 우리 가 필요 로 하 는 숫자 가 아니다.다음 과 같이 문자열 이 전체 숫자 인지 아 닌 지 를 판단 하 는 코드 입 니 다.
 
   
    public static boolean isInt(String str)
    {
       try
       {
           Integer.parseInt(str);
           return true;
       }
       catch(Exception e)
       {
           return false;
       }
    }
 
 
 
유사 하 게, 나 는 하나의 문자열 이 float, double, boolean 인지 아 닌 지 를 판단 하려 고 한다. 모두 이런 방법 으로 판단 할 수 있다.
두 번 째 방법 은 정규 표현 식 을 통 해 판단 하 는 것 이 며, 여기 서 는 더 이상 예 를 들 지 않 는 다.
한 마디 로 하면 이 두 가지 방법 은 모두 우리 가 코드 를 제시 하여 판단 해 야 한다.
Groovy 언어 에서 시스템 은 우리 가 직접 이 일 을 할 수 있 도록 도와 주 는 API 가 있 습 니 다. 상당히 간단 합 니 다. 예 를 들 어 문자열 이 int 형 인지 아 닌 지 를 판단 하려 면 다음 과 같은 코드 만 써 야 합 니 다.
 
      def num = '23'
     
      println num.isInteger()
 
 
실행 결 과 는:
true
 
다음 코드 라면:
 
      def num1 = '2.3'
     
      println num1.isInteger()
 
 
실행 결 과 는:
false
 
 
유사 한 방법 으로 는 isDouble (), isFloat (), isLong (), isNumber (), isBigDecimal (), isBigInteger () 등 이 있다.
 
판단 이 끝 난 후에 이 문자열 이 우리 가 필요 로 하 는 숫자 형식 이 라면 다음 에 해당 하 는 숫자 형식 으로 바 꿔 야 합 니 다.
예 를 들 어 문자열 을 정형 숫자 로 바 꾸 려 면 다음 과 같은 코드 가 필요 합 니 다.
 
       int num = Integer.parseInt("12");
 
 
이러한 코드 에 대해 Groovy 언어 도 더욱 간소화 되 었 다.
 
 
      def num = '23'
     
      println num.toInteger()
 
 
더 쉬 워 졌 죠?
비슷 한 방법 으로 는 toBigDecimal (), toBigInteger (), toBoolean (), toDouble (), toFloat () 등 이 있다.
 

좋은 웹페이지 즐겨찾기