You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Duncan Jones (JIRA)" <ji...@apache.org> on 2014/09/24 16:01:33 UTC

[jira] [Created] (LANG-1040) Javadoc for NumberUtils.isNumber() are not clear enough

Duncan Jones created LANG-1040:
----------------------------------

             Summary: Javadoc for NumberUtils.isNumber() are not clear enough
                 Key: LANG-1040
                 URL: https://issues.apache.org/jira/browse/LANG-1040
             Project: Commons Lang
          Issue Type: Bug
          Components: lang.math.*
    Affects Versions: 3.3.2
            Reporter: Duncan Jones
             Fix For: Discussion


The Javadocs for {{NumberUtils.isNumber()}} do not clearly define what a valid number is. The current trunk documentation states:

{quote}Checks whether the String a valid Java number.

Valid numbers include hexadecimal marked with the 0x or 0X qualifier, octal numbers, scientific notation and numbers marked with a type qualifier (e.g. 123L).

Non-hexadecimal strings beginning with a leading zero are treated as octal values. Thus the string 09 will return false, since 9 is not a valid octal value. However, numbers beginning with 0. are treated as decimal.

Null and empty String will return false.{quote}

In other Jira issues, I've seen people suggest that a number if valid if it can be used when assigning to a suitable Java type. E.g. {{"FOO"}} is a valid number if {{long x = FOO}} is valid (where {{long}} might be another numeric type). If this is the case, we should state it.

Alternatively, the definition could be in terms of what is accepted by {{createNumber()}}.

Or we define exactly what we accept by specifying a grammar in the Javadocs.





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)