java 格式化 布尔型_Java基础篇(1)-格式化
本文目錄:
十進制數字格式化——DecimalFormat
數字格式化基類——NumberFormat
字符串格式化類——String.format()
Linux輸出格式化——printf
1. 十進制數字格式化(DecimalFormat)
decimal是對數字進行格式化,比如取2位小數,這是最常見的。Java提供了DecimalFormat類,可以快速的將數字格式化為需要的樣子。
DecimalFormat類主要靠#和0兩種占位符來指定數字長度。
0表示如果位數不足,則以0填充,若是位數足夠,則正常顯示位數;
#表示如果位數不足,則該位不顯示。
DecimalFormat中0和#的區別
DecimalFormat參數的含義
源代碼測試
DecimalFormat數字格式化
2. NumberFormat數字格式化
NumberFormat是所有數字格式的抽象基類。該類提供格式化和解析數字的接口。而DecimalFormat是NumberFormat的直接子類。
3. String格式化
開發的時候,一段字符串的中間某一部分是需要可變的。我們就需要用到了String.format來填充內容。
3.1 需要的API(String.format)
String.format()字符串常規類型格式化的兩種重載方式
format(String format, Object… args) 新字符串使用本地語言環境,制定字符串格式和參數生成格式化的新字符串。
format(Locale locale, String format, Object… args) 使用指定的語言環境,制定字符串格式和參數生成格式化的字符串。
3.2 format的格式類型
轉換符
詳細說明
示例
%s
字符串類型
"小胖學編程"
%c
字符類型
'm'
%b
布爾類型
true
%d
整數類型(十進制)
88
%x
整數類型(十六進制)
FF
%o
整數類型(八進制)
77
%f
浮點類型
8.888
%a
十六進制浮點類型
FF.35AE
%%
百分比類型
%(%特殊字符%%才能顯示%)
2.3 源碼及測試結果
測試代碼及結果
3.4 String.format的高級功能
標志
詳細說明
示例
結果
+
為正數添加符號
("%+d",15)
+15
0
數字前面補0(加密常用)
("%04d",99)
0099
空格
整數之前添加空格
("% 4d", 99)
99
,
以“,”對數字分組(常用顯示金額)
(“%,f”, 9999.99)
9,999.990000
(
使用括號包含負數
(“%(f”, -99.99)
(99.990000)
3.5 源碼及測試結果
源碼及測試結果
4. Linux的輸出格式化命令-printf
printf命令的語法:printf "指定的格式" "文本1" "文本2" "文本3";
printf命令詳解
正如下圖,每一個“文本”都會被當做參數傳遞到printf命令,而每一個傳入的參數都會按照指定的"格式"被"格式化"。
image.png
%s是格式替換符,代替每一個傳入的參數。所以我們指定的格式變成了abc\n def\n sss\n aaa\n。
我們可以根據傳入的參數不同,使用不同的“格式替換符”去替換
格式替換符
詳細說明
%s
字符串類型
%f
浮點類型(也就是float或double)
%b
相對應的參數包含了轉義字符,使用該替換符時對應的轉義字符會被轉義
%c
ASCII字符,顯示相對應參數的第一個字符
%d,%i
顯示對應參數的第一個字符
%o
不帶正負號的八進制值
%u
不帶正負號的十進制值
%x
不帶正負號的十六進制值,使用a-f表示10-15
%X
不帶正負號的十六進制值,使用A-F表示10-15
%%
表示"%"本身
對應的轉義字符:
轉義字符
詳細說明
\a
警告字符,通常為ASCII的BEL字符
\b
后退
\f
換頁
\n
換行
\r
回車
\t
水平制表符
\v
垂直制表符
\
字面意義上的反斜杠字符,即\本身
例子:(1)為傳入的每個參數添加一對“括號”
[root@XXXXXX etc]$ printf "{%s}" abc def;echo ""
{abc}{def}
多格式替換符
多個格式替換符
我們所指定的“格式”中所包含的“格式替換符”的數量,就代表每次格式化參數的數量。上圖中,指定的“格式”中包含兩個“格式替換符”,那么每次printf進行“格式化”操作時,就傳入兩個參數。
傳入三個格式替換符
輸出格式的寬度
在"格式替換符"中間加上特定的數字。比如"%10s"中間的10表示當前替換符對應的輸出寬度為10個字符寬,如果輸出不足10個字符,則用空格補全。而這些數字我們稱為“修飾符”,即對替換符進行修飾。
如何進行左對齊?只要在原來的修飾符前面加上"-","-"表示左對齊,默認不加"-"表示右對齊。
[root@XXXXXX etc]$ printf "{%10s}" abc def;echo ""
{ abc}{ def}
[root@XXXXXX etc]$ printf "{%-10s}" abc def;echo ""
{abc }{def }
設置格式的寬度
還有一種修飾符"+"
注意:"+"可不是代表右對齊,不加修飾符"-"時,默認是右對齊,那么"+"修飾符什么意思呢?
+修飾符的作用
當替換符對應的參數為數字時,可以使用+修飾符是為了給正數添加+號。
(敲黑板,劃重點)到現在為止,我們接觸了3個修飾符了。需要注意的是:(1)數字:輸出當前替換符對應的輸出寬度,默認右對齊;(2)-:修改對齊方式為左對齊;(3)+:為正數添加+符號;
數字修飾符的特殊用法
[root@XXXXXX etc]$ printf "%-12.3f\n" 19
19.000
[root@XXXXXX etc]$ printf "%-12.3d\n" 19
019
[root@XXXXXX etc]$ printf "%-0.3f\n" 19.1230
19.123
[root@XXXXXX etc]$ printf "%-0.3s\n" 19.1230
19.
修飾符作為正數我們知道,就是輸出的寬度;
但是作為小數時:
當替換符為%f時,如果數字修飾符帶有小數,則數字修飾符小數點后的數字表示對應的小數精度;
當替換符為%d時,如果數字修飾符帶有小數,則數字修飾符后的小數表示整數的長度,長度不夠時,高位用0補全;
當替換符為%s時,如果數字修飾符帶有小數,則是截取字符串的長度;
參考文章:
總結
以上是生活随笔為你收集整理的java 格式化 布尔型_Java基础篇(1)-格式化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信用卡如何转账,不能直接转账
- 下一篇: java关于泛型的实验代码_[改善Jav