怎么把float类型含科学计数法的数据转成普通数字
如何把float类型含科学计数法的数据转成普通数字
如何转成普通的数据表现形势,并且小数点后只保留两位,高手求教,在线等。。。
------解决方案--------------------
先根据E分割字符串,根据E后面的数据来截取前面的,然后转换成float后再乘上10 * E后面的数字大小
------解决方案--------------------
应该是10的N次方
------解决方案--------------------
public void getDoubleValTest(){
String str = "1.0502487857251702E8";
String sarr[] = str.split("E");
double res1 = Double.valueOf(sarr[0]);
int ci = Integer.valueOf(sarr[1]);
double cinum = 10;
for(int i=0;i<ci;i++){
cinum = cinum*10;
}
double res = res1*cinum;
NumberFormat nf = new java.text.DecimalFormat("0.00");
System.out.println("res:" + nf.format(res));
}
------解决方案--------------------
- Java code
String str = "1.0502487857251702E8";
如何转成普通的数据表现形势,并且小数点后只保留两位,高手求教,在线等。。。
------解决方案--------------------
先根据E分割字符串,根据E后面的数据来截取前面的,然后转换成float后再乘上10 * E后面的数字大小
------解决方案--------------------
应该是10的N次方
------解决方案--------------------
public void getDoubleValTest(){
String str = "1.0502487857251702E8";
String sarr[] = str.split("E");
double res1 = Double.valueOf(sarr[0]);
int ci = Integer.valueOf(sarr[1]);
double cinum = 10;
for(int i=0;i<ci;i++){
cinum = cinum*10;
}
double res = res1*cinum;
NumberFormat nf = new java.text.DecimalFormat("0.00");
System.out.println("res:" + nf.format(res));
}
------解决方案--------------------
- Java code
String str = "1.0502487857251702E8"; BigDecimal num = new BigDecimal(str); DecimalFormat df = new DecimalFormat("0.00"); String res = df.format(num); System.out.println(res);