CH_happy 2022-02-19 11:08 采纳率: 25%
浏览 28

为什么在使用nextLine接收时我没键盘输入他就继续跑完了

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
package Scanner;

import java.util.Scanner;

public class Happy01 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用next方式接收:");
        if (scanner.hasNext()){
            String str1 = scanner.next();
            System.out.println("输出内容为:"+str1);
        }
        System.out.println("==================================");
        System.out.println("使用nextLine方式接收:");
        if (scanner.hasNextLine()){
            String str2 = scanner.nextLine();
            System.out.println("输出内容为:"+str2);
        }
        scanner.close();
    }
}
运行结果及报错内容

使用next方式接收:
hello world
输出内容为:hello
==================================
使用nextLine方式接收:
输出内容为: world

我的解答思路和尝试过的方法
我想要达到的结果

为什么在使用nextLine接收时我没键盘输入他就继续跑完了

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2022-02-19 11:31
    关注

    因为有缓存,重新创建一个输入流。

    import java.util.Scanner;
    public class Main {
        public static void main(String[] args){
            Scanner scanner = new Scanner(System.in);
            System.out.println("使用next方式接收:");
            if (scanner.hasNext()){
                String str1 = scanner.next();
                System.out.println("输出内容为:"+str1);
            }
            System.out.println("==================================");
            System.out.println("使用nextLine方式接收:");
            scanner = new Scanner(System.in);
            if (scanner.hasNextLine()){
                String str2 = scanner.nextLine();
                System.out.println("输出内容为:"+str2);
            }
            scanner.close();
        }
    }
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 2月19日

悬赏问题

  • ¥15 preLaunchTask"C/C++: aarch64- apple-darwin22-g++-14 生成活动 文件”已终止,退出代码为-1。
  • ¥18 关于#贝叶斯概率#的问题:这篇文章中利用em算法求出了对数似然值作为概率表参数,然后进行概率表计算,这个概率表是怎样计算的呀
  • ¥20 C#上传XML格式数据
  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥100 单片机hardfaulr
  • ¥20 手机截图相片分辨率降低一半
  • ¥50 求一段sql语句,遇到小难题了,可以50米解决
  • ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
  • ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
  • ¥15 虚拟机检测,可以是封装好的DLL,可付费