String value = 4.30000000e+01;
如何解析I ?? 在java中
我已经尝试过使用parseInt(value,10).. 实际上,javascript parseInt可以转换但java方法导致错误
我该如何解决?
答案 0 :(得分:1)
整数不应该像这样表示。最后,您可以将其解析为BigDecimal,然后获取其int值:
WKInterfaceController.reloadRootControllersWithNames(["NewInterfaceController"], contexts: ["NewInterfaceController"])
答案 1 :(得分:1)
你有一个字符串,你可以把它解析成一个双重对象并调用方法 intValue()
int r = Double.valueOf("4.30000000e+01").intValue();
System.out.println(r);
答案 2 :(得分:0)
e+01
表示指数。所以e+01
实际上是10 pow 1
。 Double
可以解析:
Double.valueOf("4.30000000e+01") // 43.0
答案 3 :(得分:0)
参考JLS第3.10.2节(http://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.2):浮点文字的小数部分可以用科学记数法的形式表示,例如e + 01,如你的例子所示。
Double d = Double.parseDouble(value);
如果你想要整数输出,将返回double值,你可以将其转换为int(精度损失)。