DecimalFormat 保留小數格式化
DecimalFormat format 方法
大家在format()一個小數是,總是對格式中的'0'和'#'有些不解吧!
eg:
1:new DecimalFormat("00.000").format(pi) //結果:03.142
2:new DecimalFormat("##.###").format(pi) //結果:3.142
都是對pi進行格式化,但第一個的結果是03.142,第二個的結果是3.142
這是什麼原因呢?
0和#都是佔位符,但在不同的地方,作用不一樣。下面對他們做了具體的比較。
希望對大家有所幫助。
0:
比實際數字的位數多,不足的地方用0補上。
new DecimalFormat("00.00").format(3.14) //結果:03.14
new DecimalFormat("0.000").format(3.14) //結果: 3.140
new DecimalFormat("00.000").format(3.14) //結果:03.140
比實際數字的位數少:整數部分不改動,小數部分,四捨五入
new DecimalFormat("0.000").format(13.146) //結果:13.146
new DecimalFormat("00.00").format(13.146) //結果:13.15
new DecimalFormat("0.00").format(13.146) //結果:13.15
#:
比實際數字的位數多,不變。
new DecimalFormat("##.##").format(3.14) //結果:3.14
new DecimalFormat("#.###").format(3.14) //結果: 3.14
new DecimalFormat("##.###").format(3.14) //結果:3.14
比實際數字的位數少:整數部分不改動,小數部分,四捨五入
new DecimalFormat("#.###").format(13.146) //結果:13.146
new DecimalFormat("##.##").format(13.146) //結果:13.15
new DecimalFormat("#.##").format(13.146) //結果:13.15
其他的一些用法,(新增百分號,千分號,科學計數法,自定義正負數模板)
可參照
http://jff.iteye.com/blog/576737
http://blog.csdn.net/marcoleung/article/details/176514
以上,如有不妥,請指出!
相關推薦
DecimalFormat 保留小數格式化
DecimalFormat format 方法 大家在format()一個小數是,總是對格式中的'0'和'#'有些不解吧! eg: 1:new DecimalFormat("00.000").format(pi) //結果:03.142 2:new DecimalFormat("##.##
對於浮點數double和float資料DecimalFormat保留小數並且格式化並設定千分位數操作
//示例一:最多保留兩位小數 System.out.println("--------###,###.##---------------"); System.out.println(new DecimalFormat("###,###.##").format(1231111.
Java中使用DecimalFormat保留兩位小數,同時不保留0
import java.text.DecimalFormat; /** * Created by laozhu on 2018/4/10. */ public class Helo {
java BigDecimal用法詳解(保留小數,四捨五入,數字格式化,科學計數法轉數字等)
一、簡介 Java在java.math包中提供的API類BigDecimal,用來對超過16位有效位的數進行精確的運算。雙精度浮點型變數double可以處理16位有效數。在實際應用中,需要對更大或者更小的數進行運算和處理。float和double只能用來做科學計算或者是
java DecimalFormat保留兩位小數,四捨五入記錄
int k =3; int credsum=11; float num= (float)k/credsum; DecimalFormat df = new DecimalForm
python 浮點數保留小數
方式 decimal round logs gen 輸出 浮點數 .cn 保留 http://www.cnblogs.com/Raymon-Geng/p/5784290.html 這裏有三種方法, round(a,2) ‘%.2f‘ % a Decimal(‘5.000‘)
Java指定保留小數位數的方法
小數位數 mode down ceil package style spa 直接 obj package com.qiyuan.util; import java.math.BigDecimal; import java.math.RoundingMode; impor
C# 保留小數位數的方法
小數 mat text double 必須 前言 ont ext digits ? 前言 本文主要介紹 C# 中實現小數位數的保留,完成對小數位數四舍五入的幾種方法。 1. 使用 Math.Round() 方法 說明: 1) 其實使用 Math.Round()
保留小數,但會四舍五入
AC ++ bits 四舍五入 main sin return IT ble #include<bits/stdc++.h>using namespace std;main(){double a=2.9939; cout<<fixed&
(JAVA保留小數問題,基礎)Probability hdu2131
-s his lan ins after rec accep rst new Probability 鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2131 Time Limit: 3000/1000 MS (Java/Oth
to_char中的保留小數的用法
表示式to_char(值,'保留位數示範數字'),如to_char(2222.22222,'9999.99') select to_char(222.222222,'999.99') as 值 from dual 查詢結果: 但是我們在使用的時候多多
matlab裡面如何保留小數特定位數
[轉載] Matlab取整函式有: fix, floor, ceil, round.取整函式在程式設計時有很大用處。 一、取整函式 1.向零取整(截尾取整) fix-向零取整(Round&
BigDecimal的加減乘除即保留小數
加減乘除 BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5"); &
c/c++ 整數除預算保留小數
兩個整數相除會自動省略小數點後的小數位即使下面這種: int a,int b; int a = 4; int b = 3; double d = a/b; d= 1.0000000; --------------------------- 整數除法用 “/”的話得到的是一個整數(得到
scanf 、pritnf與保留小數輸出
格式化輸入函式scanf scanf函式的功能是格式化輸入任意資料列表,其一般呼叫格式為: scanf(格式控制符,地址列表) 例 scanf("%d%d",&a,&b) 【說明】 1)地址列表中給出各變數的地址,可以為變數的地址,也
java : 保留小數位數的方法
Ex : double a=1.2356; //方法1 double b=(double)Math.round(a*100)/100; //1.23 //方法2 String s1=String.format("%.2f",a);
Twig中控制保留小數位數
number_format 該number_format過濾器格式的數字 引數: decimal: 要顯示的小數點數 decimal_point: 用於小數點的字元 thousand_sep: 用於千位分隔符的字元 舉例:
postgresql保留小數位數的方法
還是需要通過cast函式 cast A as B 它可以用於型別轉換,也可以用來確定小數位數 -- # dom 平均 SELECT cast(AVG(CAST(dom AS FLOAT)) AS decimal(10,2)) -- as decimal(15,2) FROM estate_e
C++保留小數位數問題
首先 介紹主角: setprecision() 和 setiosflags() 這兩個函式是標頭檔案#include<iomanip>裡的函式,記得加標頭檔案#include<iomanip> setprecision() 顧
Java計算兩個經緯度之間的距離公式,外加百度地圖高德地圖轉換,和保留小數
在網上看到了很多兩個座標之間的距離公式,也都親自測試了,有很多都不可以用,後來找到一個比較好的距離演算法,分享給大家 經緯度兩點之間的距離公式 public class MapUtils { private static double rad(double d) { return