社区
Java SE
帖子详情
double类型如何正确的转换为字符串类型?
supersuyogi
2006-03-17 06:37:59
double d = 0.0001;
String s1 = String.valueOf(d);//结果为1.0E-4
String s2 = new BigDecimal(d).toString();//结果为1.00000000000xxxxxxxxxxxxx
怎样转换才能得到正确的结果(0.0001)?
...全文
710
23
打赏
收藏
double类型如何正确的转换为字符串类型?
double d = 0.0001; String s1 = String.valueOf(d);//结果为1.0E-4 String s2 = new BigDecimal(d).toString();//结果为1.00000000000xxxxxxxxxxxxx 怎样转换才能得到正确的结果(0.0001)?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
supersuyogi
2006-03-22
打赏
举报
回复
那0.1为什么就能转为0.1,而不会转成1.0E-1呢?
wizardblue
2006-03-22
打赏
举报
回复
但问题是double在计算机中就是以科学记数法存的呀
supersuyogi
2006-03-21
打赏
举报
回复
比方说0.0000001被转换成0.00000011,还可以理解,是损失了精度,可是被转成1.0E-7就不能接受了
supersuyogi
2006-03-21
打赏
举报
回复
使用double难道就没有办法了,其实0.0001被转换为1.0e-4并没有损失任何精度只是使用了科学计数法
难道就不能有个参数控制double不采用科学计数法吗?因此我就是想在double能够达到的精度内的任何
数值都能正确的输出成小数的形式,这个要求应该不算高吧?
zhkchi
2006-03-21
打赏
举报
回复
要求更高的精度可以使用Bigdecimal
TONYBLARED
2006-03-21
打赏
举报
回复
帮顶。
wizardblue
2006-03-21
打赏
举报
回复
楼主的要求似乎有点高了,问题是一个数被弄成double以后计算机自己是无法知道这个数的精度是有多少的,因为浮点数的表示是有误差的,
所以按照楼主的要求,事先不知道一个double的精度,要求这个doulbe能够准确无误的输出,
似乎是不可能的事了
supersuyogi
2006-03-21
打赏
举报
回复
你试过吗?这样的结果是"1.0E-7",而我要的结果是"0.0000001"
syhan
2006-03-21
打赏
举报
回复
天啊,有这么复杂吗
你就这样
Double dbl = new Double(0.0000001);
String strDbl = dbl.toString();
不就行了
jeffaple
2006-03-21
打赏
举报
回复
学习一下,帮顶!
supersuyogi
2006-03-21
打赏
举报
回复
没有人能给个好的方法吗?
hellosjz
2006-03-20
打赏
举报
回复
up
supersuyogi
2006-03-20
打赏
举报
回复
String s = ""+d;的结果也是"1.0E-4",不是"0.0001"
liang8305
2006-03-20
打赏
举报
回复
占位置学习
wizardblue
2006-03-20
打赏
举报
回复
double d = 0.0001;
String s = ""+d;
supersuyogi
2006-03-20
打赏
举报
回复
以上提供的都是用格式化的方法,可是如果没有提供精度如何格式化.
比如0.0001,0.000000000000000001(无论多少位)都要能正确转换,怎么办呢?
紫炎圣骑
2006-03-17
打赏
举报
回复
用DecimalFormat类实现格式化最合适的
做鸡真好吃
2006-03-17
打赏
举报
回复
Mark~
heroseaxuj
2006-03-17
打赏
举报
回复
class test
{
public static void main(String aaa[])
{
double aa = 17.123;
String as = (""+aa);
System.out.println (as);
}
}
这样就可以吧
jackychen_king
2006-03-17
打赏
举报
回复
System.out.println(Double.toString(12232.4654544646));
如果你还要格式化的化,有两种情况
jdk1.4:参看zx2002027(希望之星)
jdk1.5:使用system的格式化输出.
加载更多回复(3)
基本数据
类型
与
字符串
之间的
转换
String类中内置的方法很多,所以会有时候我们会选择将基本数据
类型
转换
为
字符串
然后使用内置的方法 那么这里我们也分为两个方面: (1)基本
类型
转换
为
字符串
基本
类型
转换
为
字符串
的方法有三种方法: ①使用包装类中的toString()方法 ②使用String类的valueOf()方法 ③加入空字符 String i = Integer.toString(h);//使用包装类中的toString()方法 String i = String.valueOf(h);//使用String类的valueOf()方法
C语言中
字符串
转换
成浮点型(float和double)的方法及示例代码
该函数的第一个参数是要
转换
的
字符串
,第二个参数是一个指向字符指针的指针,它将用于存储不进行
转换
的第一个字符的地址。因此,在使用这些函数之前,我们应该确保
字符串
的格式是
正确
的。在上面的示例中,我们将
字符串
"3.14"和"2.718"分别
转换
为double和float
类型
的浮点数,并将它们打印到屏幕上。然而,在实际使用中,我们应该注意输入
字符串
的格式,以避免
转换
错误。函数类似,第一个参数是要
转换
的
字符串
,第二个参数是一个指向字符指针的指针,它将用于存储不进行
转换
的第一个字符的地址。希望本文对你有所帮助!
Java——
类型
转化+
字符串
类型
在Java中,当参与运算数据
类型
不一致时,就会进行
类型
转换
。和。自动
类型
转换
即:代码不需要经过任何处理,在代码编译时,编译器会自动进行处理。的时会自动进行。
C++
字符串
和基本
类型
转换
的各种方法总结
一、概述 1、C++中提供了
字符串
到基本
类型
转换
的函数,在Windows下也提供了对应的基本
类型
到
字符串
转换
的函数(在Linux没有,所以需要跨平台时不能使用)。 2、
字符串
到基本
类型
转换
的接口包括atoi(
字符串
转int),atol(
字符串
转long),_atoi64(
字符串
转long long,注意前面有下滑线),atof(
字符串
转double);非数字
字符串
转换
时,不会抛异常或奔
mysql 将
字符串
转换
数字
类型
的_MySQL
字符串
类型
用数字可以查出来 MySQL
字符串
类型
会
转换
成数字 MySQL隐式
类型
转换
...
一、发现问题1、在一次MySQL查询中,某字段为 varchar
字符串
类型
,传入参数值为 int 数字
类型
,发现查询的结果和预期的不一致。 如: 某两列 name='11' , name = '11aa' 。 where name = 11 , 可以查到 '11' 和 '11aa' 两个结果,这里是错误的;而 where name ='11' ,能得到预期结果。2、反之,字段为 int 数字
类型
...
Java SE
62,626
社区成员
307,258
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章