apache common에 NumberUtils 메소드 중에, to타입이라는 타입 변환 메소드가 있다.
또한 숫자인지 구분하는 것과 간단히 max, min을 구하는 메소드가 있어서 소개한다.
org.junit.Assert.assertEquals(1111L, org.apache.commons.lang.math.NumberUtils.toLong("1111"));
org.junit.Assert.assertEquals(0, org.apache.commons.lang.math.NumberUtils.toLong("111a"));
org.junit.Assert.assertEquals(1.1, org.apache.commons.lang.math.NumberUtils.toDouble("1.1"), 0);
org.junit.Assert.assertEquals(3000, org.apache.commons.lang.math.NumberUtils.toInt("3000"));
org.junit.Assert.assertEquals(0, org.apache.commons.lang.math.NumberUtils.toInt("abc"));
org.junit.Assert.assertEquals(false, org.apache.commons.lang.math.NumberUtils.isDigits("a1"));
org.junit.Assert.assertEquals(true, org.apache.commons.lang.math.NumberUtils.isNumber("111"));
org.junit.Assert.assertEquals(3, org.apache.commons.lang.math.NumberUtils.max(1, 2, 3));
org.junit.Assert.assertEquals(1, org.apache.commons.lang.math.NumberUtils.min(new int[]{1,2,3}));
//모두 통과
그리고, NumberUtils에는 큰 숫자를 만들 수 있는 'create타입'이 있는데, 그 중 createBigDecimal()과 createBigInteger() 메소드가 있어서 종종 유용하다.
System.out.println(org.apache.commons.lang.math.NumberUtils.createBigDecimal("11111111111111111111111111111111111111"));
System.out.println(org.apache.commons.lang.math.NumberUtils.createBigInteger("11111111111111111111111111111111111111"));
<결과>
11111111111111111111111111111111111111
11111111111111111111111111111111111111
'general java' 카테고리의 다른 글
[jenkins] Aborted by anonymous, jenkins Finished: ABORTED 해결하기 (0) | 2016.08.10 |
---|---|
[play] play1 framework에서 test 실행하기 (0) | 2016.07.29 |
[spring] Spring Utis의 ReflectionUtils 사용 예제 (0) | 2016.07.13 |
[spring boot] multi-datasource (multi db) 간단하게 사용하기 (0) | 2016.06.29 |
[spring-jdbctemplate] mysql date 타입을 rowmapper와 연동하기 (0) | 2016.06.24 |