Java的Scanner類可以通過使用nextInt()
,nextDouble()
,nextFloat()
等方法來實現(xiàn)格式化輸入。但是,如果你想要更靈活的格式化輸入,可以使用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("請輸入一個整數(shù)(格式:三位數(shù)):");
int number = scanner.format("%03d", scanner.nextInt()).intValue();
System.out.println("你輸入的整數(shù)是:" + number);
System.out.println("請輸入一個小數(shù)(格式:兩位小數(shù)):");
double decimal = scanner.format("%02f", scanner.nextDouble()).doubleValue();
System.out.println("你輸入的小數(shù)是:" + decimal);
scanner.close();
}
}
在這個示例中,我們使用%03d
和%02f
作為輸入格式。%03d
表示一個三位數(shù)的整數(shù),如果不足三位數(shù),將在左側(cè)用0填充。%02f
表示一個兩位小數(shù)的浮點數(shù),如果不足兩位小數(shù),將在右側(cè)用0填充。
注意:scanner.format()
方法返回的是一個字符串,所以我們需要使用intValue()
或doubleValue()
方法將其轉(zhuǎn)換為相應(yīng)的數(shù)值類型。