[
https://issues.apache.org/jira/browse/LANG-747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sebb resolved LANG-747.
-----------------------
Resolution: Fixed
Assignee: (was: Sebb)
Fixed 8 and 16 digit hex numbers
Also now ignores leading zeros when calculating which number type to use
URL: http://svn.apache.org/r1507169
Log:
LANG-747 NumberUtils does not handle Long Hex numbers
Modified:
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/math/NumberUtils.java
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
> NumberUtils does not handle Long Hex numbers
> --------------------------------------------
>
> Key: LANG-747
> URL: https://issues.apache.org/jira/browse/LANG-747
> Project: Commons Lang
> Issue Type: Bug
> Components: lang.math.*
> Reporter: Sebb
> Fix For: 3.2
>
>
> NumberUtils.createLong() does not handle hex numbers, but createInteger()
> handles hex and octal.
> This seems odd.
> NumberUtils.createNumber() assumes that hex numbers can only be Integer.
> Again, why not handle bigger Hex numbers?
> ==
> It is trivial to fix createLong() - just use Long.decode() instead of
> valueOf().
> It's not clear why this was not done originally - the decode() method was
> added to both Integer and Long in Java 1.2.
> Fixing createNumber() is also fairly easy - if the hex string has more than 8
> digits, use Long.
> Should we allow for leading zeros in an Integer?
> If not, the length check is trivial.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira