解决方案 »

  1.   

    这个api如果用于文件IO或网络IO,你这么理解当然没问题,如果是标准输入呢,那就要看一下Scanner的源码了,hasNext方法为什么会阻塞,因为它会调用readInput方法,这个readInput方法会阻塞,等待读取输入流;但是next方法不一定会阻塞,因为hasNext会读到buffer中,当buffer中有值,就直接返回了
      

  2.   

    大哥,我可否理解为在while语句执行判断之前程序就被阻塞等待标准输入,有了输入后再执行while循环,然后next()从buffer中取值,这样的说法你怎么看!