And*_*rew 43
Number无法实例化,因为它是一个抽象类.我建议传入Numbers,但如果你在Strings上设置,你可以使用任何子类解析它们,
Number num = Integer.parseInt(myString);
Run Code Online (Sandbox Code Playgroud)
要么
Number num = NumberFormat.getInstance().parse(myNumber);
Run Code Online (Sandbox Code Playgroud)
@See NumberFormat
您可以使用java.text.NumberFormat类.该类有一个parse()方法,它解析给定的字符串并返回相应的Number对象.
public static void main(String args[]){
List<String> myStrings = new ArrayList<String>();
myStrings.add("11");
myStrings.add("102.23");
myStrings.add("22.34");
NumberFormat nf = NumberFormat.getInstance();
for( String text : myStrings){
try {
System.out.println( nf.parse(text).getClass().getName() );
} catch (ParseException e) {
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以使用 commons.apache api -> https://commons.apache.org/proper/commons-lang/javadocs/api-3.4/index.htmlNumber获取String
用法:
String value = "234568L"; //long in the form string value
Number number = NumberUtils.createNumber(value);
Run Code Online (Sandbox Code Playgroud)