簡體   English   中英

如何限制輸入整數中的位數

[英]How to limit the number of digits in input integer

String s1=sc.next();
int x=sc.nextInt();
System.out.println(s1+"\t"+x);

在打印語句中如何限制整數的位數,比如如果輸入是 30,它會打印 030 有沒有辦法做到這一點

如果您想限制用戶輸入的位數,您可以執行以下操作:

int maxDigitCount = 5; //Change this to limit amount of digits in int
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
int length = String.valueOf(i).length();
while(length > maxDigitCount) {
    i = sc.nextInt();
    length = String.valueOf(i).length();
}
sc.close();
//do something with i

還有其他更有效的解決方案來計算整數中的位數,在這個例子中,我只選擇最短和最簡單的解決方案作為說明。

String s1=sc.next();
int x=sc.nextInt();
String padded = String.format("%03d" , x);
System.out.println(s1+"\t\t"+padded);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM