java程序如何在控制台限制输入的字数。如输入4位数字

2024-11-20 12:36:29
推荐回答(2个)
回答(1):

可以利用正则表达式,输入之后在判断:

package foundations.iolearn;

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ReadingFromStdin {

public static void main(String[] args)
{
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = "";
while((s = br.readLine()) != null) {
if (!s.matches("^\\s*(\\+|-)?([0-9]|[1-9][0-9]*)\\s*$")) {
throw new Exception("含有非法字符");
}
int i = Integer.parseInt(s.trim());
System.out.println("read: " + i);
}
}
catch (Exception e) {
e.printStackTrace();
}
}

}

回答(2):

这个是没法控制的。
不过可以写一个循环判断输入如果不是4位 就让他重新输入。