這篇文章主要介紹 JAVA 中 Strings 的格式化,這個主要是用到 printf 這個函數,使咱們方便格式化複雜數據。html
public PrintStream printf(String format, Object... args);java
咱們來看下api的介紹:git
[warning]使用指定格式字符串和參數將格式化的字符串寫入此輸出流的便捷方法。 調用此方法的 out.printf(format, args) 形式,行爲與如下調用徹底相同: api
out.format(format, args)
參數: format - 在格式字符串的語法中描述的格式字符串 args - 格式字符串中的格式說明符引用的參數。若是參數多於格式說明符,則忽略額外的參數。參數的數量是可變的,而且可>覺得零。參數的最大數量受到 Java Virtual Machine Specification 定義的 Java 數組的最大維數的限制。針對 null >參數的行爲依賴於 conversion。 [/warning] 這裏咱們主要說的就是 format 了;數組
實例:函數
package com.javacodegeeks.core.string; public class StringFromatExample { public static void main(String[] args) { System.out.printf("Integer : %d\n",15); System.out.printf("Floating point number with 3 decimal digits: %.3f\n",1.21312939123); System.out.printf("Floating point number with 8 decimal digits: %.8f\n",1.21312939123); System.out.printf("String: %s, integer: %d, float: %.6f", "Hello World",89,9.231435); } }
輸出:code
Integer : 15 Floating point number with 3 decimal digits: 1.213 Floating point number with 8 decimal digits: 1.21312939 String: Hello World, integer: 89, float: 9.231435orm
%.8d : 最多輸出8位字符。htm
package com.javacodegeeks.core.string;ip
public class StringFromatExample {
public static void main(String[] args) { System.out.printf("%-12s%-12s%s\n","Column 1","Column 2","Column3"); System.out.printf("%-12.5s%s", "Hello World","World"); }
}
Column 1 Column 2 Column3 Hello World
%d :輸出整數。 %6d :輸出6位正數,不夠的左邊補空白 %-6d :輸出6位正數,不夠的右邊補空白 %06d : 輸出整數,位數不夠的補0填充 %.2d : 最多打印2位整數
package com.javacodegeeks.core.string; public class StringFromatExample { public static void main(String[] args) { System.out.printf("%-12s%-12s%s\n","Column 1","Column 2","Column3"); System.out.printf("%-12d%-12d%07d\n",15,12,5); } }
Column 1 Column 2 Column3 15 12 0000005
%f : 直接輸出 %15f :輸出浮點數,不夠15位的用0補齊 %.8f : 最多輸出8位小數。 %9.4f : 最多輸出4位小數。若是不夠9位佔字符,填充空白
package com.javacodegeeks.core.string; public class StringFromatExample { public static void main(String[] args) { System.out.printf("%-12s%-12s\n","Column 1","Column 2"); System.out.printf("%-12.5f%.20f", 12.23429837482,9.10212023134); } }
Column 1 Column 2 12.23430 9.10212023134000000000