java吧 关注:1,239,890贴子:12,711,511
  • 4回复贴,共1

新手请教一问题,此处程序检查数遍,仍不知问题所在,望指点~~

只看楼主收藏回复


为什么while里的内容运行第二遍就会有这种问题呢,workername无法输入,望解答。


IP属地:上海1楼2016-01-09 09:40回复
    这只是sanner的一个bug,,你如果先用Scanner输出int型的,再用其输出String型的,那么会把换行符复制给字符串。先String,再int没事,,因为你循环后是先int后String了
    解决办法:1.可以每次输入都创建一个Scanner对象(这种方法不好)
    2.不管输入什么都当作字符串来输入,然后根据需求再在程序中把字符串转成相应类型。


    IP属地:山东2楼2016-01-09 10:03
    收起回复
      因为nextint不会吞换行符号,你可以在循环最后加一个nextline


      来自Android客户端3楼2016-01-09 10:11
      收起回复