SigParser

Type parse module

String 또는 Object의 형 변환을 담당하는 클래스 입니다.

"100.345"int로 변환하거나, new Long(100)double 형으로 변환할 수 있습니다. 혹은 특정 값이 어떤 타입인지 비교할 수도 있습니다.

Reason

  • Integer는 바로 Byte로 캐스팅 될 수 없습니다. (Integer는 Byte의 하위 클래스가 아닙니다). 그러나, 일반화 프로그래밍 도중에는 이런 기능이 필요할 때가 있습니다.

  • byte는 String으로 캐스팅 될 수 없으며 String.valueOf(byte)을 호출해야 합니다.

Usage

  • SigParser를 생성합니다. (SigParser.getInstance()가 존재합니다.)

  • parse(String)parse(Object, Object)를 사용합니다.

SigParser parser = SigParser.getInstance();
int number = parser.parse("100", Integer.class);
double number2 = parser.parse(100, Double.class);

Feature

Object Parse

parse(Object, Object)

해당 객체로 변환을 시도하는 Object Parse 입니다. 현재는 SigType들에 대해서만 정확한 작동을 보증하며, 그렇지 않은 경우 일반 캐스팅을 시도합니다.

String Parse

parse(String)

String parse에는 Object parse와 다른 규칙이 적용됩니다.

SigType 중 String 변환에 사용되는 종류는 아래와 같습니다. SigTypeParser는 아래의 순서대로 String의 값 parse 및 반환을 시도합니다.

  • INTEGER

  • LONG

  • DOUBLE

  • BOOLEAN

  • BIG_DECIMAL

  • STRING

Caution

  • SigType들에 대해서만 정확한 작동을 보증합니다.

Last updated