首页 > 编程 > Java > 正文

java double类型保留小数和四舍五入

2019-11-08 19:58:26
字体:
来源:转载
供稿:网友

方法一:通过四舍五入方式保留特定后几位

import java.util.*;public class Main{public static void main(String args[]){double t=1.123456;System.out.PRintln((double)Math.round(t*100000)/100000);   //5个零}}     

输出:1.12346(四舍五入了)

说明:这种方式通过强制输出double类型,同时注意这里有乘上几个零就是保留几个小数。如果改成Math.round(t*100)/100,这样就会输出1.12

方法二:通过四舍五入保留小数

import java.util.*;import java.text.DecimalFormat;public class Main {    public static void main(String[] args) {       double t=1.123456;       System.out.println(new DecimalFormat("0.0000").format(t)); //英语中:Decimal---十进制的  Format----格式化    }}输出:1.1235

说明:这是调用了text.DecimalFormat,在输出时候,将数字格式化了,其实(“0.0000”)就是格式的模版,输出4个小数,会自动四舍五入,改成(“0.0”)就会输出1.1,改成(“00.000”)会自动补位输出01.123

方法三:通过四舍五入保留小数

import java.util.*;public class Main {    public static void main(String[] args) {    	double t = 1.123456;    	String str = String.format("%.4f", t);    	System.out.println(str);           }}输出:1.1234

说明:通过转换成字符串的方式输出小数点后几位,其中的(“%4f”)就是控制的输出的小数点的位数要求

方法四:不四舍五入保留小数

import java.util.*;public class Main {    public static void main(String[] args) {    	double t = 1.123456;    	String str = String.valueOf(t);    	String str2="";    	for(int i=0;i<6;i++)    		str2=str2+str.charAt(i);    	System.out.println(str2);    }}输出:1.1234

说明:本质就是强制转化成字符串,然后进行字符串的截取工作


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表