JAVA保留两位小数(四舍五入)「建议收藏」

JAVA保留两位小数(四舍五入)「建议收藏」importjava.math.BigDecimal;importjava.text.DecimalFormat;importjava.text.NumberFormat;publicclasstestNumber{ publicstaticdoublenum=3.1015926; publicstaticdoublezero=0.00000;

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 

import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;


public class testNumber {
	public static double num = 3.1015926;
	public static double zero = 0.00000;
	
	//方法一:打印最简便,永远是末尾有两位小数
	public static void function1(){
		 System.out.println(String.format("%.2f", num));
		 System.out.println(String.format("%.2f", zero));
	}
	
	//方法二:转换后是String类型
	public static void function2(){
		DecimalFormat df = new DecimalFormat("0.00");
		System.out.println(df.format(num));
		System.out.println(df.format(zero));
	}
	
	//方法三:转换后是double类型,但会省去最末位的0,只保留一位0
	public static void function3(){
		BigDecimal bg1 = new BigDecimal(num);
		double finalNum = bg1.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
		System.out.println(finalNum);
		
		BigDecimal bg2 = new BigDecimal(zero);
		double finalZero = bg2.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
		System.out.println(finalZero);
	}
		
	//方法四:末尾的0都会省去 3.1001->3.1,0.0000->0
	public static void function4(){
		NumberFormat nf = NumberFormat.getNumberInstance();
		nf.setMaximumFractionDigits(2);
		System.out.println(nf.format(num));
		System.out.println(nf.format(zero));
	}
	
	public static void main(String args[]){
		System.out.println("function1:");
		function1();
		System.out.println("function2:");
		function2();
		System.out.println("function3:");
		function3();
		System.out.println("function4:");
		function4();
	}
}

 

结果展示:

JAVA保留两位小数(四舍五入)「建议收藏」

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190013.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 4.2.1越狱

    4.2.1越狱
    这是我见过的最简单的越狱方法了!操作成功,绝对简单可用·
     
     
    越狱并非高不可攀,也并非可怕至极,只要不慌张、耐心,一步步来,就没有问题。
    一、升级到4.2.1系统。
          先在威锋网里下载ipad4.2.1固件http://bbs.weiphone.com/read-htm-tid-862081.html,记住下载后的存放位置,然后把ipad连接到电脑,打开itunes,按住shift键点更新,选择刚下载的固件,把系统升级到4.

    2022年6月6日
    53
  • Android视频编码_安卓视频解码器

    Android视频编码_安卓视频解码器SVideoRecorder(https://github.com/yellowcath/SVideoRecorder)使用Android原生的MediaCodec进行视频录制,对比大量使用FFmpeg进行录制的库优点如下:体积小 :编译后的aar只有187K,ffmpeg一个so就7、8M,精简之后也差不多还有一半大小 速度快 :在huaweiP9上,720P的一帧:  FFmpeg编码…

    2022年8月31日
    2
  • 单片机看门狗工作原理_51单片机看门狗

    单片机看门狗工作原理_51单片机看门狗/*此程序实现单片机”看门狗”WDT的功能*/#include”p18f458.h”unsignedlongi;/*系统初始化子程序*/voidinitial(){TRISD=0X00;/*D口设为输出*/}/*延时子程序*/voidDELAY(){for(i=19999;–i;)continue;}/*主程序*/main(){initial();/*初始化,设定看门狗的相关寄存器*/PO…

    2025年8月13日
    2
  • javascript 数组复制「建议收藏」

    javascript 数组复制「建议收藏」javascript数组复制数组不能直接等于一个数组例如vararr=arr1数组是内置对象,存储的是数组的地址,这样复制就等于复制了地址,更改一个数组的值,另一个也会更改复制方法slice()数组截取vararr=[1,2,3]vararr2=arr.splice();…

    2022年7月14日
    16
  • cocos2d-html5 碰撞检測的几种方法

    cocos2d-html5 碰撞检測的几种方法

    2021年12月16日
    41
  • inner join on, left join on, right join on的区别与介绍

    TableA aidadate 1a1 2a2 3a3 TableB bidbdate 1b1 2b2&

    2021年12月26日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号