java保留n位小数输出的几种方法

java保留n位小数输出的几种方法一、四舍五入吧并保留两位小数类似于c语言printf的输出printf():doublex=8.055;System.out.printf(“%.2f\n”,x);//8.06format():doublex=8.055;System.out.format(“%.2f\n”,x);//8.06format()方法将double型转换为String型再输出1…

大家好,又见面了,我是你们的朋友全栈君。

一、四舍五入并保留两位小数

类似于c语言printf的输出

  1. printf():
double x = 8.055;
System.out.printf("%.2f\n",x);//8.06
  1. format():
double x = 8.055;
System.out.format("%.2f\n",x);//8.06

format()方法将double型转换为String型再输出

double x = 8.055;
String s = String.format("%.2f", x);
System.out.println( s );

创建Formatter类的对象

import java.util.Formatter;//不要忘了在类的外面导入这个包

Formatter a = new Formatter(System.out);
double x = 8.055;
a.format("%.2f\n", x);//8.06
a.close();//关闭a

二、不四舍五入直接保留两位小数

创建DecimalFormat类的对象

import java.text.DecimalFormat;//不要忘记导入包

DecimalFormat df = new DecimalFormat(".00");
double x = 8.055;
System.out.println(df.format(x));//8.05

创建NumberFormat对象

  1. setMaximumFractionDigits(2)最多保留两位小数
import java.text.NumberFormat;

NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(2);//不足两位不补0,超过两位部分的自动舍去
double x = 8.055;
double y = 8.5;
System.out.println(nf.format(x));//8.05
System.out.println(nf.format(y));//8.5
  1. setMinimumFractionDigits(2)至少保留两位小数
import java.text.NumberFormat;

NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMinimumFractionDigits(2);//不足两位自动补0,超过两位的部分不舍去
double x = 8.055;
double y = 8.5;
System.out.println(nf.format(x));//8.055
System.out.println(nf.format(y));//8.50
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • html跳转网页代码_js访问url

    html跳转网页代码_js访问urlJS判断搜索引擎来路跳转代码:varregexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|biso|gougou|ifeng|ivc|sooule|niuhu|biso)(\.[a-z0-9\-]+){1,2}\//ig;varwhere=document.referrer;if(regexp.test(where)){

    2022年8月12日
    8
  • java多线程总结

    进程:是一个正在执行的程序每个进程都有一个执行顺序,该顺序是一个执行路径或叫一个控制单元,线程:就是进程中的一个独立的控制单元。线程在控制着进程的执行一个进程中可以有多个线程,但是一个线程只

    2021年12月23日
    47
  • mysql截取最后一个字符_sql截取最后一位

    mysql截取最后一个字符_sql截取最后一位转载:MySQL字符串截取函数:left(),right(),substring(),substring_index()。还有mid(),substr()。其中,mid(),substr()等价于substring()函数,substring()的功能非常强大和灵活。1.字符串截取:left(str,length)selectleft(‘2017-11-14T16:00:00.0…

    2022年10月2日
    3
  • bug与漏洞

    bug与漏洞

    2021年7月31日
    78
  • 玩转ADB命令(ADB命令使用大全)

    玩转ADB命令(ADB命令使用大全)我相信做Android开发的朋友都用过ADB命令,但是也只是限于安装应用push文件和设备重启相关,根深的也不知道了,其实我们完全可以了解多一点,有一些不常用的场景我们至少应该知道它可以做到,比如,我们知道adbinstall却不知道adbshellamstart。前者是用来安装软件,后者用来打开软件,后者的一个使用场景让我对他重视:公司定制Android系统,在调试屏幕的时候要看是否满屏

    2022年5月13日
    37
  • pycharm报错traceback most_cm3d2报错error

    pycharm报错traceback most_cm3d2报错errorPycharm报错Pythonerror:PermissionError:[Errno13]Permissiondenied:在pycharm中读取csv文件时,出现错误PermissionError:[Errno13]Permissiondenied:。看了大部分博客说是因为文件权限问题,或者文件被手动打开,这两个方法都试了试后,无效。解决问题的方法:配置Python编译器时将ScriptPath的路径写到脚本的具体路径,要包含脚本的文件名。如下图。…

    2022年8月26日
    2

发表回复

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

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