DecimalFormat 與double格式化
Demo來一發,做做記錄:
- //保留兩位小數
- private DecimalFormat decimalFormat = new DecimalFormat("0.00");
- String str1="0.01";
- String str2="0.09";
- //轉化為Double型別數值相加減,精度不會缺失
- double sum = Double.parseDouble(str1) + Double.parseDouble(str2);
- LogUtil.d("sum", sum + ""); //列印結果 sum=0.09999999999999999
-
String formatTitle = decimalFormat.format(sum);
- LogUtil.d("formatum", formatTitle); //列印結果 formatTitle=0.10
其中主要用到了DecimalFormat 這個類,它是 NumberFormat 的一個具體子類,用於格式化十進位制數字。
Demo示例:
- DecimalFormat df1 = new DecimalFormat("0.0");
- DecimalFormat df2 = new DecimalFormat("#.#");
- DecimalFormat df3 = new DecimalFormat("000.000");
-
DecimalFormat df4 = new
- LogUtil.d("sum",df1.format(12.34)); //列印結果 sum: 12.3
- LogUtil.d("sum",df2.format(12.34)); //列印結果 sum: 12.3
- LogUtil.d("sum",df3.format(12.34)); //列印結果 sum: 012.340
- LogUtil.d("sum",df4.format(12.34)); //列印結果 sum: 12.34
以下摘自百度百科:
DecimalFormat 包含一個模式 和一組符號
符號含義:
0 一個數字
# 一個數字,不包括 0
. 小數的分隔符的佔位符
, 分組分隔符的佔位符
; 分隔格式。
- 預設負數字首。
% 乘以 100 和作為百分比顯示
? 乘以 1000 和作為千進位制貨幣符顯示;用貨幣符號代替;如果雙寫,用國際貨幣符號代替。如果出現在一個模式中,用貨幣十進位制分隔符代替十進位制分隔符。
X 字首或字尾中使用的任何其它字元,用來引用字首或字尾中的特殊字元。
相關推薦
DecimalFormat 與double格式化
Demo來一發,做做記錄: //保留兩位小數 private DecimalFormat decimalFormat = new DecimalFormat("0.00"); String str1="0.01"; String str2="0.09
float與 double型數據存儲---IEEE浮點數表示法
0.12 理解 float 標準 顯示 運算 details .com c/c++ 目前C/C++編譯器標準都遵照IEEE制定的浮點數表示法來進行float,double運算。 這種結構是一種科學計數法,用符號、指數和尾數來表示,底數定為2——即把一個浮點數表示為尾數乘以2
Linux(6)正規表示法與檔案格式化處理
一.正則表示式 ①編碼對正則表示式的影響 我們看到的字元文字與數字都是透過編碼表轉換來的。由於不同語系的編碼資料並不相同,所以就會造成資料擷取結果的差異了。 舉例來說,在英文大小寫的編碼順序中,zh_TW.big5 及 C 這兩種語系的輸出結果分別如下: LANG=C
matlab中圖片資料型別轉換uint8與double
matlab中處理影象畫素點資料: img1=double(imread('lenna.bmp')); matlab中imshow圖片,要先轉換成uint8: subplot(1,2,1),imshow(uint8(img1)),title('original');subplot(1,2,2),imsh
double格式化工具類
這是專案中用到的double格式化工具類,記錄於此。 import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.Numbe
FastJson 陣列、List、Set、Map基本序列化與日期格式化
摘要: FastJson可以直接序列化陣列、List、Set、Map等,也可以直接支援日期型別資料的格式化,包括java.util.Date、java.sql.Date、java.sql.Timestamp、java.sql.Time。 FastJson不僅可以支援普通
FastJson 數組、List、Set、Map基本序列化與日期格式化
混合 sta 日期類 hang EDA time json2 fas nta 摘要: FastJson可以直接序列化數組、List、Set、Map等,也可以直接支持日期類型數據的格式化,包括java.util.Date、java.sql.Date、java.sql.Time
matlab裡的影象格式轉換,矩陣型別unit8與double
1、uint8與double double函式只是將讀入影象的uint8資料轉換為double型別,一般不使用;常用的是im2double函式,將 uint8影象轉為double型別,範圍為0-1,如果是255的影象,那麼255轉為1,0還是0,中間
輸入與輸出--格式化輸出
str()與repr() 對於字串:兩方法作用結果有差異 對於列表,元組,字典等:兩方法輸出一致 s="hello\n" print(str(s)) print(repr(s)) a=[1,2,3,4] print(str(a)) print(repr(a))
java 日期格式化 與 String格式化轉日期 日期運算
public static void main(String[] args) throws ParseException { long day = (strToDate("20180922").getTime() - getNewDate().getTime())/(24
鳥哥的Linux私房菜基礎篇 第十一章 正則表示式與檔案格式化處理
1. 正則的概念 正則表示式就是處理字串的方法,他是以行為單位來進行字串的處理行為, 正則表示式通過一些特殊符號的輔助,可以讓使用者輕易的達到“搜尋/刪除/取代”某特定字串的處理程式! 2. 基礎
C++之CString與double、int及float互相轉化
在MFC程式中,可以使用Format方法方便的實現int、float和double等數字型別轉換為CString字串。以下是CString的Format支援的格式說明: %c 單個字元 %d 十進位制整數(int) %ld 十進位制整數(long) %f 十進位制浮點數(f
JAVA JDK1.8 時間戳與時間格式化 實用工具類
這是為了個人的方便,也同時為了大家能更好地瞭解與使用獲取時間的各種方法。 不 廢 話, 上 代 碼 : import org.springframework.util.Assert; import java.time.Cloc
8.Linux的正規表示式與檔案格式化處理
目錄 1.什麼是正規表示式? 正規表示法就是處理字串的一種方法,他是以行為單位來進行字串的處理行為, 正規表示法透過一些特殊符號的輔助,可以讓使用者輕易的達到『搜尋/刪除/取代』某特定字串的處理程式,能大大提高系統管理員的效率。 注意:正規表示法
Double.parseDouble()與Double.valueOf()區別
Double.parseDouble方法是把數字型別的字串,轉換成double型別 Double.valueOf方法是把數字型別的字串,轉換成Double型別 double a = 0.009; String b = "199
float與double的範圍和精度
http://blog.csdn.net/dxy612/article/details/5518477 1 範圍 float和double的範圍是由指數的位數來決定的。 float的指數位有8位,而double的指數位有11位,分佈如下: float: 1bit(符號
C++中float與double型別的精度區別
double精度高,有效數字15-16位,float精度低,有效數字6-7位,但是double消耗的記憶體是float的兩倍,運算速度比float慢得多,建議能用float保證精度的就用float,少用double。 #include <iostream> #
DecimalFormat 保留小數格式化
DecimalFormat format 方法 大家在format()一個小數是,總是對格式中的'0'和'#'有些不解吧! eg: 1:new DecimalFormat("00.000").format(pi) //結果:03.142 2:new DecimalFormat("##.##
long與double和int的區別
int對於記憶體的要求最小,只能對整數進行操作long和都double對於記憶體的要求都大,提高了資料的精度,但是對於精度的方向不同。若是輸入資料的精度比較大,會產生小數,那麼應該用double型別。使用double型別時,若是對保留的小數的位數有要求,此時常與Decimal
DecimalFormat (Java 格式化數字 )
DecimalFormat用法: DecimalFormat 是 NumberFormat 的一個具體子類,用於格式化十進位制數字。 DecimalFormat 包含一個模式 和一組符號 符號含義: 0 一個數字 # 一個數字,不包括 0 .