Java輸出多位小數(shù)的三種方法(附代碼)
方法一:String類的方式
最常用的方式:

double a=3.141111;
System.out.println(String.format("%.1f",a));//保留一位小數(shù)
System.out.println(String.format("%.2f",a));//保留兩位小數(shù)
System.out.println(String.format("%.3f",a));//保留三位小數(shù)
System.out.print(String.format("%.4f",a));//用print可以取消換行方法二:printf格式化輸出
與C語言相似,Java中也可以通過printf輸出:

double a=3.141111;
System.out.printf("%.1f",a);//保留一位小數(shù)
System.out.printf("%.2f",a);//保留兩位小數(shù)
System.out.printf("%.3f",a);//保留三位小數(shù)
System.out.printf("%.4f\n",a);//加\n可以換行方法三:DecimalFormat類的方式
DecimalFormat 是 NumberFormat 的一個具體子類,用于格式化十進制數(shù)字,主要靠0和#兩個占位符號。#表示如果盡可能占需占的位數(shù)。0表示如果位數(shù)不足則用0補足。

//class前=導(dǎo)入: import java.text.DecimalFormat;
//#的使用:
DecimalFormat a = new DecimalFormat("#.#");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("#.#");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("##.##");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("###.###");
System.out.println(a.format(12.34)); //打印12.34
可以看出,#好像并沒有什么作用,該打印什么就打印什么,但并不是這樣的,它是與大多與0一起使用,起著很大的作用。
//0的使用:
DecimalFormat a = new DecimalFormat("0.0");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("00.00");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("000.000");
System.out.println(a.format(12.34)); //打印012.340
//#和0的使用
DecimalFormat a = new DecimalFormat("#.#");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("#.#");
System.out.println(a.format(12.34)); //打印12.34
DecimalFormat a = new DecimalFormat("##.##");
System.out.println(a.format(12.34)); //打印12.34
舉例(完整代碼):
import java.text.DecimalFormat;
public class Test {
public static void main(String[] args) {
DecimalFormat a = new DecimalFormat("#.00");
System.out.println(a.format(12.34567)); //四舍五入輸出12.35
}
}總結(jié)
到此這篇關(guān)于Java輸出多位小數(shù)的三種方法的文章就介紹到這了,更多相關(guān)Java輸出多位小數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Java使用Pipeline對Redis批量讀寫(hmset&hgetall)
本篇文章主要介紹了Java使用Pipeline對Redis批量讀寫(hmset&hgetall),具有一定的參考價值,有興趣的可以了解一下。2016-12-12
Java中保留兩位小數(shù)的四種方法實現(xiàn)實例
今天小編就為大家分享一篇關(guān)于Java中保留兩位小數(shù)的四種方法實現(xiàn)實例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-02-02
java集合之CopyOnWriteArrayList源碼解析
這篇文章主要介紹了java集合之CopyOnWriteArrayList源碼解析,容器array是volatile修飾的,即set和get方法都是線程安全的,整個添加過程上了鎖,所以整體是通過volatile和lock來保證的線程安全,需要的朋友可以參考下2023-12-12
Java將Object轉(zhuǎn)換為數(shù)組的代碼
這篇文章主要介紹了Java將Object轉(zhuǎn)換為數(shù)組的情況,今天在使用一個別人寫的工具類,這個工具類,主要是判空操作,包括集合、數(shù)組、Map等對象是否為空的操作,需要的朋友可以參考下2022-09-09

