首页 > 解决方案 > 如何限制输入整数的位数

问题描述

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

在打印语句中如何限制整数的位数,例如如果输入为 30,它将打印 030 有什么办法可以做到这一点

标签: java

解决方案


如果您想限制用户输入的位数,您可以执行以下操作:

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

还有其他更有效的解决方案来计算整数中的位数,在这个例子中我只是选择最短和最简单的解决方案作为说明。


推荐阅读