String a=”37626615.73017“;这样一个较长的字符串怎么转为double类型的
解决方案
4
double b=Double.parseDouble(a);
2
String a="37626615.73017"; double d=Double.parseDouble(a); BigDecimal bd=new BigDecimal(a);
4
2楼的方法可行。题主你试试
2
double b=Double.parseDouble(a);
+1
+1
2
String s = “37626615.73017”;
System.out.println(Double.parseDouble(s));
打印3.762661573017E7
科学计数法不影响你接下来的数学运算。
假如你只是显示在界面上,你直接显示String就行了,干嘛要转换?
System.out.println(Double.parseDouble(s));
打印3.762661573017E7
科学计数法不影响你接下来的数学运算。
假如你只是显示在界面上,你直接显示String就行了,干嘛要转换?
2
数字没变只是用科学计数法显示了,你可以处理一下
String a="37626615.73017"; double d=Double.parseDouble(a); DecimalFormat decimalFormat = new DecimalFormat("###0.00");//格式化设置 System.out.println(decimalFormat.format(d));
2
所以为什么要用double
2
哥,你直接把你的double值传进去不就行了,不影响你计算吧
2
你的意思是传进去后描出来的位置跟原来的不一样?
假如是这样的话,本人觉得并不是类型的问题,而是你坐标的问题
打个比方你原始数据坐标是火星坐标,而这个方法处理的事百度坐标
假如是这样的话,本人觉得并不是类型的问题,而是你坐标的问题
打个比方你原始数据坐标是火星坐标,而这个方法处理的事百度坐标
2
你的意思是传进去后描出来的位置跟原来的不一样?
假如是这样的话,本人觉得并不是类型的问题,而是你坐标的问题
打个比方你原始数据坐标是火星坐标,而这个方法处理的事百度坐标你的意思是传进去后描出来的位置跟原来的不一样?
假如是这样的话,本人觉得并不是类型的问题,而是你坐标的问题
打个比方你原始数据坐标是火星坐标,而这个方法处理的事百度坐标本人的坐标都是从数据库取出来的(37627808.506369 3637617.145968, 37627817.70498 3637611.791558)这样的字符串…..
标准地球坐标即GPS设备获得的坐标,该坐标需要经过国家测绘局进行加密后形成火星坐标(WGS-84 ),我们用的google坐标和高德地图坐标也就是火星坐标
百度地图,在火星坐标的基础上再进行一次加密,形成了百度地图上的坐标,因此,直接将标准地球坐标显示在百度地图上是会有几百米的偏差的。按照此原理,标准GPS坐标经过两步的转换可得到百度坐标。原因是在处理百度地图时,例如查询其POI都需要百度地图上的坐标,而不是标准坐标,那么这样的转换就是必要的了
本人的意思是你原始数据跟你方法要处理的坐标系是不一致的,导致你后来的瞄点出现错误