Java的Scanner類可以通過使用nextInt()
,nextDouble()
,nextFloat()
等方法來實現格式化輸入。但是,如果你想要更靈活的格式化輸入,可以使用java.util.Scanner.format()
方法。
下面是一個使用Scanner.format()
方法的示例:
import java.util.Scanner;
import java.util.Scanner.Format;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個整數(格式:三位數):");
int number = scanner.format("%03d", scanner.nextInt()).intValue();
System.out.println("你輸入的整數是:" + number);
System.out.println("請輸入一個小數(格式:兩位小數):");
double decimal = scanner.format("%02f", scanner.nextDouble()).doubleValue();
System.out.println("你輸入的小數是:" + decimal);
scanner.close();
}
}
在這個示例中,我們使用%03d
和%02f
作為輸入格式。%03d
表示一個三位數的整數,如果不足三位數,將在左側用0填充。%02f
表示一個兩位小數的浮點數,如果不足兩位小數,將在右側用0填充。
注意:scanner.format()
方法返回的是一個字符串,所以我們需要使用intValue()
或doubleValue()
方法將其轉換為相應的數值類型。