为了账号安全,请及时绑定邮箱和手机立即绑定

按照标准答案和我自己想的限制num不能大于十位数的方法,并不能起到作用,是什么原因?

if (num >= 0  && num<=999999999){
while(num != 0){
count++;
num/=10;
}
System.out.println("它是个"+ count+"位的数!");
} else{
System.out.println("输入有误!");
}
这是java入门第一季4-16题的标准答案
应该是如果num>999999999的话,显示“输入错误”
但是事实上会报我贴出来的错误
error: integer number too large: 9999999999
 int num = 9999999999;

^ 1 error

是系统设置的问题吗?

正在回答

2 回答

是不是你num的变量设定的太大了

int的范围在-2147483648 ~2147483647之间

但是你好像设定了一个超过这个范围的变量


0 回复 有任何疑惑可以回复我~

把你这个整个代码贴出来,报错信息贴出来

0 回复 有任何疑惑可以回复我~
#1

我去_这名字也有人用 提问者

之前问题是发在课程下面的,结果到问答这边就看不到原来课程了。。。 我的问题已经修改了,麻烦帮我看看,谢谢
2015-06-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

按照标准答案和我自己想的限制num不能大于十位数的方法,并不能起到作用,是什么原因?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信