java double保留小数点的零的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java double保留小数点的零的问题相关的知识,希望对你有一定的参考价值。
System.out.println(Double.parseDouble(“1.20”));
打印结果是:1.2,怎样打印出1.20
(一):小数点后面位数过长,四舍五入保留指定位数:
可以用以下代码实现:
public class TestDemo
public static void main(String[] args)
double a=15.32743859;
double b=Math.round(a*10000)/10000.0000;//保留四位小数
System.out.println(b);
想保留n位小数,就Math.round(a*10的n次方)/10的n次方.n个0。
(二):如果小数点后末位为0,myeclipse中不予显示,如
double a=15.80;
System.out.print(a);
则在控制台中输出的结果是15.8。 参考技术A 字符串相加当然数字是连在一起的,把字符串转换为double型Double.parseDouble(字符串),字符串num修改为double型.
就OK了!追问
打印double时最后的零怎么保存下来呢?不大懂额
追答DecimalFormat myFormatter = new DecimalFormat("####.#");
myFormatter.format(double); //注意,这句整体作为String
也可以
String str = double.toString();
str = str.substring(0,str.indexOf(".")+2);
或者
String result = String .format("%.2f");
如果非得要使用double类型如果非得要使用double类型呢?
参考技术C 用DecimalFormat格式化,DecimalFormat df=new DecimalFormat("0.00");
System.out.println(df.format(1.2));追问
如果非得要使用double类型呢?
本回答被提问者采纳 参考技术D DecimalFormat df = new DecimalFormat("0.00");double d = 123.9078;
double db = df.format(d);
则db=123.90;追问
df.format(d);返回不是String么?0。0非得使用double来接受1.20,能打印出1.20么
Python将int转换为保留零的字符串[重复]
【中文标题】Python将int转换为保留零的字符串[重复]【英文标题】:Python convert int to string preserving zeros [duplicate] 【发布时间】:2017-07-14 05:20:11 【问题描述】:我想将小数转换为字符串,其中保留末尾的零。 使用 str 方法擦除最后的零。
例子:
number=0.20
目标:"0.20"
例如使用:str(number)="0.2"
似乎不起作用。
【问题讨论】:
【参考方案1】:如果您想要 2 位小数,请使用:
number = 0.20
str_number = '%.2f' % number
f
前面的数字表示所需的位置数。
【讨论】:
【参考方案2】:这可以使用字符串格式化来完成。
"0:.2f".format(number)
将返回0.20
。
执行您选择的方法将不起作用,因为在声明 number = 0.20
时它会立即省略最后一个零。如果您将其放入空闲状态:
number = 0.20
number
0.2
所以将number
声明为str(number)
就是在做str(0.2)
。
【讨论】:
【参考方案3】:使用带有适当格式字符串的%
运算符:
'%1.2f' % number
=> '0.20'
【讨论】:
以上是关于java double保留小数点的零的问题的主要内容,如果未能解决你的问题,请参考以下文章