首先,不论是int还是long都不能做到无限,所以只能用String,那么你第一件事就是判断输入的是不是整数,这个可以用正则表达式,然后用length方法获取长度
再问: public static void main(String[] args) {
Scanner in= new Scanner(System.in);
int mun=in.nextInt();
int a = 0;
while(mun!=0){
mun /=10;
a++;
}
System.out.println("您输入的是"+a+"位数");
}
}
是修改还是重写
再答: public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String str = in.next();
String rex = "^\\d+$";
Pattern p = Pattern.compile(rex);
Matcher m = p.matcher(str);
if(m.find()){
System.out.println("您输入的是" + str.length() + "位数");
}
}
