String.format()
是 Java 中的一個非常有用的方法,用于格式化字符串。它允許你使用占位符 {}
來表示要插入的值,并通過傳遞參數來替換這些占位符。以下是一些基本的使用示例:
String name = "Alice";
int age = 30;
String formattedString = String.format("My name is %s and I am %d years old.", name, age);
System.out.println(formattedString); // 輸出:My name is Alice and I am 30 years old.
在這個例子中,%s
是一個字符串占位符,%d
是一個整數占位符。
2. 格式化浮點數:
double pi = 3.14159;
String formattedDouble = String.format("Pi is approximately %.2f.", pi);
System.out.println(formattedDouble); // 輸出:Pi is approximately 3.14.
在這里,%.2f
表示保留兩位小數的浮點數。
3. 對齊和填充:
int[] numbers = {1, 2, 3, 4, 5};
String formattedArray = String.format("%-5d | %-5d | %-5d | %-5d | %-5d", numbers[0], numbers[1], numbers[2], numbers[3], numbers[4]);
System.out.println(formattedArray);
// 輸出(假設數字寬度至少為5):
// 1 | 2 | 3 | 4 | 5
在這個例子中,%-5d
表示左對齊的數字,總寬度為5個字符。如果數字不足5個字符,它會在左側用空格填充。
4. 使用換行符:
String multiLineString = String.format("Hello, %s!\nToday is %s.", "World", "Monday");
System.out.println(multiLineString);
// 輸出:
// Hello, World!
// Today is Monday.
注意,\n
在字符串字面值中表示換行符,但在 String.format()
中不是必需的,除非你確實想在格式化的字符串中包含換行。
5. 類型轉換:
String.format()
還支持一些類型轉換,如將整數轉換為十六進制字符串:
int number = 255;
String hexString = String.format("The hexadecimal value of %d is %X.", number, number);
System.out.println(hexString); // 輸出:The hexadecimal value of 255 is FF.
在這個例子中,%X
表示大寫的十六進制表示。如果你想要小寫,可以使用 %x
。