在SO上有一个类似的问题,建议使用NumberFormat,这也是我所做的。
我正在使用NumberFormat的parse()方法。
public static void main(String[] args) throws ParseException{
DecToTime dtt = new DecToTime();
dtt.decToTime("1.930000000000E+02");
}
public void decToTime(String angle) throws ParseException{
DecimalFormat dform = new DecimalFormat();
//ParsePosition pp = new ParsePosition(13);
Number angleAsNumber = dform.parse(angle);
System.out.println(angleAsNumber);
}
我得到的结果是
1.93
我并没有真正期望这个能够工作,因为1.930000000000E+02看起来是一个非常不寻常的数字,我需要先进行一些字符串解析以去除零吗?还是有一种快速而优雅的方法呢?