import java.util.*;
public class Example4 { public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入任意一个整数:");
int num = input.nextInt();
int count = 0;
do{
num = num / 10; //提取位数
count++;
}while(num > 0);
System.out.println(count + "位");
}}
public class Example4 { public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入任意一个整数:");
int num = input.nextInt();
int count = 0;
do{
num = num / 10; //提取位数
count++;
}while(num > 0);
System.out.println(count + "位");
}}
解决方案 »
- jacob怎么用啊,完全看不懂啊~~~
- 关于Objective-C和Go语言 的讨论
- 作为一个编程者,是先要广,还是先精?
- velocity奇怪问题
- httpclient如何模拟浏览器写cookie
- 关于telnet不能启动的问题!请大家指点一下!
- 100分求解:有丰富实战经验的高手请进来讨论一个开发中布署调试的问题,很有意义,帮顶有分
- java连接sql的步骤.应下载什么jdbc啊
- 初学者求助:jtable的问题,茫然不知所措ing,焦急等待ing....
- 我在查看oracle的sql语句是看到这几个陌生的单词
- 在struts2中从页面得到输入的值
- Spring 3.0 MVC 出现如下错误
Scanner input = new Scanner(System.in);
System.out.print("请输入任意一个整数:");
int num = input.nextInt();
if (num <= 100000 && num > 0) {
int count = 0;
do {
num = num / 10; // 提取位数
count++;
} while (num > 0);
System.out.println(count + "位");
} else {
System.out.println("请输入10W以内数字。");
}
}
Scanner input = new Scanner(System.in);
boolean b = true;
while(b){
System.out.print("请输入任意一个整数:");
int num = input.nextInt();
int count = 0;
do {
num = num / 10; // 提取位数
count++;
} while (num > 0);
System.out.println(count + "位");
if(count<=5){
b = false;
}
} }
Exception in thread "main" java.util.InputMismatchException: For input string: "10000000000"
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at Example4.main(Example4.java:7)
我知道为什么只能输入十位数以内的数
int类型最大支持的正数为2147483647
所以你输入11位肯定不行。超过了int的范围。
我尝试了一下。。
interger、double、float都有。
可是你要大概的了解这几种基本数据类型的取值范围啊。
java基础里有的。