spring-hateoas-ext/src/main/java/de/escalon/hypermedia/affordance/DataType.java
public static boolean isIsoLatin1Number(String str) {
        if (str == null)
            return false;
        char[] data = str.toCharArray();
        if (data.length == 0)
            return false;
        int index = 0;
        if (data.length > 1 && (data[0] == '-' || data[0] == '+'))
            index = 1;
        for (; index < data.length; index++) {
            if (data[index] < '0' || data[index] > '9')
                return false;
        }
        return true;
    }
public static boolean isIsoLatin1Number(String str) {
        if (str == null)
            return false;
        char[] data = str.toCharArray();
        if (data.length == 0)
            return false;
        int index = 0;
        if (data.length > 1 && (data[0] == '-' || data[0] == '+'))
            index = 1;
        for (; index < data.length; index++) {
            if (data[index] < '0' || data[index] > '9')
                return false;
        }
        return true;
    }
public static boolean isIsoLatin1Number ( String str ) { if ( str == null ) return false ; char [ ] data = str . toCharArray ( ) ; if ( data . length == 0 ) return false ; int index = 0 ; if ( data . length > 1 && ( data [ 0 ] == ' ' || data [ 0 ] == ' ' ) ) index = 1 ; for ( ; index < data . length ; index ++ ) { if ( data [ index ] < ' ' || data [ index ] > ' ' ) return false ; } return true ; }
Determines if the given string contains only 0-9 [ISO-LATIN-1] or an optional leading +/- sign.

@param str
to check
@return true if condition holds, false otherwise
@see <a href="http://stackoverflow.com/a/29331473/743507">Comparison of regex and char array performance</a>
@see Character#isDigit Examples for non-ISO-Latin-1-Digits
Determines if the given string contains only 0 - 9 [ ISO - LATIN - 1 ] or an optional leading + / - sign .