黑马程序员技术交流社区

标题: Integer中的valueOf(String str)和parseInt(String str) [打印本页]

作者: 复仇的撒旦    时间: 2015-4-13 22:57
标题: Integer中的valueOf(String str)和parseInt(String str)
在百度上看到有人说Integer中的valueOf(String str)和parseInt(String str)方法的不同之处是一个返回Integer对象一个返回int值,自己琢磨了下这2个方法还有一个妙用就是,valueOf(String str)是如果字符串不能解析为一个整数则抛出异常:NumberFormatException ,而parseInt()是如果字符串不包含可解析的整数则抛出NumberFormatException (我的理解是这个整数超过了int的范围)。当我们接受键盘输入,又要把接受的变成Integer或者Int类型时,可以try这两个方法来判断是输入的格式不对,还是输入的数超过了Int的范围。貌似入学测试就有一道这样的题,就可以用这种方法判断
作者: 陈佳    时间: 2015-4-13 23:00
点个赞!
作者: fantacyleo    时间: 2015-4-22 12:26
楼主的理解不对。如果你传给parseInt一个字符串"a",它仍然是抛NumberFormatException异常,所以无法靠这个异常区分是格式不对还是超过范围。要判断格式,可以用正则表达式。排除了格式之后,如果还抛出NumberFormatException,则可以判断是超过int范围
作者: itheima_llt    时间: 2015-4-22 12:47
应该加分呀
作者: itheima_llt    时间: 2015-4-22 14:22
不错!值得学习,楼主继续




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2