posts - 274,  comments - 1258,  trackbacks - 0

  庞大的Java为我们提供了很多有用的功能,对ACMer来说最有用的可能莫过于BigInteger类了,BigInteger功能强大,效率颇高,是过高精题的居家旅行必备好工具,但刚才试着用Java来过一道高精题Autumn is a Genius时,却总是莫名其妙地RTE(Runtime Error)掉,实在郁闷到极。
  后来经过详细的测试,才发现BigInteger无法接受有前置'+'号的输入,比如读入+123会抛出一个异常:

Exception in thread "main" java.lang.NumberFormatException: For input string: "+123"
        at java.lang.NumberFormatException.forInputString(Unknown Source)
        at java.lang.Integer.parseInt(Unknown Source)
        at java.math.BigInteger.
< init > (Unknown Source)
        at java.math.BigInteger.
< init > (Unknown Source)
        at Autumn_is_a_Genius.main(Autumn_is_a_Genius.java:10)
后来发现,即使是屏幕读入一个int也会抛出这样的异常。只要自己手工处理掉它就可以过了,20行不到的代码,呵呵~
posted on 2007-03-11 14:34 踏雪赤兔 阅读(1807) 评论(1)  编辑 收藏 引用 所属分类: 玩转编程

FeedBack:
# re: Java 数字输入的一个bug
2007-03-28 22:24 | 医务管理者
很聪明
借此版块我想就<开源哲学>谈点看法.
“从长远来看,我们也不知道开源到底会给Sun 公司带来什么样的影响。但是从目前的状况来看,我们每一次开放核心技术的源代码,都给公司带来财务上的强劲增长。”
这使我想起两句俗语:先下手为强和落袋平安.同时也在此提醒那些靠出卖"脑袋"为生的人们因该懂得保护自己的知识产不受侵害权.或是自己走产销一条龙的市场化道路来维护好自己的利益.  回复  更多评论
  
只有注册用户登录后才能发表评论。

百度空间| 见闻日记| 编程感悟
我的twitter


LOGO

自我介绍:百度厂基础平台车间的一名挨踢民工。擅长C++、算法、语言设计、分布式计算,也用过Java,Python, PHP,JS/AS等语言开发。请关注我的twitter (免翻墙版) 发QQ消息


添加到收藏夹 Locations of visitors to this page

常用链接

随笔分类(300)

随笔档案(274)

文章分类(38)

相册

收藏夹(54)

与博主互动

博客手拉手

搜索

  •  

积分与排名

  • 积分 - 392911
  • 排名 - 10

最新评论

阅读排行榜

评论排行榜