Commons Lang、NumberUtils.createNumber()

import org.apache.commons.lang.math.NumberUtils;

public class C2008122500 {
    public static void main(String[] args) {
        System.out.println(NumberUtils.createNumber("1"));
        System.out.println(NumberUtils.createNumber("1").getClass().getName());

        //System.out.println(NumberUtils.createNumber("1L"));
        //System.out.println(NumberUtils.createNumber("1L").getClass().getName());

        System.out.println(NumberUtils.createNumber("1.2f"));
        System.out.println(NumberUtils.createNumber("1.2f").getClass().getName());

        System.out.println(NumberUtils.createNumber("1.2d"));
        System.out.println(NumberUtils.createNumber("1.2d").getClass().getName());

        System.out.println(NumberUtils.createNumber("0x10"));
        System.out.println(NumberUtils.createNumber("0x10").getClass().getName());
    }
}

で、

1
java.lang.Integer
1.2
java.lang.Float
1.2
java.lang.Double
16
java.lang.Integer