A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 三分之一 于 2015-8-30 15:10 编辑

从键盘上输入一个数字,怎样判断这个数字是否超出范围?
难道只能用if(int a>65535)这种方法判断吗?如果不知道最大整数是65535的话,该怎么实现这个功能呢?

11 个回复

倒序浏览
本帖最后由 元笙 于 2015-8-27 18:55 编辑

输入应该不能直接赋值给整型,否则输入很可能超出接受的数据类型的取值范围,这样就不能进行正确的赋值
回复 使用道具 举报
本帖最后由 元笙 于 2015-8-27 18:55 编辑

{:3_46:}{:3_46:}
回复 使用道具 举报
你可以在Integer类中有一个方法求得最大值和最小范围 你可以查Api
回复 使用道具 举报
yanglingui 发表于 2015-8-27 20:12
你可以在Integer类中有一个方法求得最大值和最小范围 你可以查Api

额,我把它改成
  1. if(int a>Integer.MAX_VALUE)
复制代码
,输出就提示错误,如果用这个最大值和最小值的话,判断语句该怎么写呢?
回复 使用道具 举报
学习学习
回复 使用道具 举报
SYAD 中级黑马 2015-8-28 15:02:09
7#
Integer有个方法获取最大最小范围
回复 使用道具 举报
SYAD 中级黑马 2015-8-28 15:04:00
8#
三分之一 发表于 2015-8-28 14:07
额,我把它改成,输出就提示错误,如果用这个最大值和最小值的话,判断语句该怎么写呢? ...

判断表达式里怎么有个int
回复 使用道具 举报
SYAD 发表于 2015-8-28 15:04
判断表达式里怎么有个int

额。。。因为我是从键盘输入一个字符串,将字符串转换成int型数据,然后在判断这个数字是否超出int型的最大范围。刚查API,发现似乎不能用Integer的最大值和最小值来限定,因为类型不一样。。。
回复 使用道具 举报
为什么你键盘录入的一定是要字符串类型转换成int类型呢? 这不是多此一举么?直接从键盘录入一个int类型的数不好么?
回复 使用道具 举报
{:3_49:}  直接 try  catch 不就好了嘛...
回复 使用道具 举报
三分之一 发表于 2015-8-28 14:07
额,我把它改成,输出就提示错误,如果用这个最大值和最小值的话,判断语句该怎么写呢? ...

int 类型怎么可以大于 他的最大值呢 你可以采取其他方法 代码就像写英语作文 可以有很多语句的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马