• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
小K-yf
博客园    首页    新随笔    联系   管理    订阅  订阅
用户交互Scanner(Java)

基本介绍

1.next()

  • 一定要读取到有效字符后才可以结束输入
  • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
  • 只有输入有效字符后才将其后面的空白作为分隔符或者结束符
  • next()不能得到带有空格的字符串

2.nextLine():

  • 以Enter为结束符,也就是说nextLine()方法返回的是输入回车键之前的所有字符
  • 可以获得空白

实例展示

public class ScannerDx {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接受键盘数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用next方式接收:");
        //判断用户有没有输入字符串
        if (scanner.hasNext()){//表示正确:scanner.hasNext()=true,可省略=true
            //使用next方式接收
            String str=scanner.next();//程序会等待用户输入完毕(用户输入:Hello World)
            System.out.println("输出的内容为:"+str);//输出内容为:Hello
        }

        System.out.println("使用nextLine方式接收:");
        String string=scanner.nextLine();//(用户输入:Hello World)
        System.out.println("输出内容为:"+string);//输出内容为:Hello World

        //凡是属于IO流的类如果不会关闭就会一直占用资源,养成好习惯用完就关掉
        scanner.close();

        //实例
        Scanner scanner1=new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int i=0;
        if (scanner1.hasNextInt()) {
            i=scanner1.nextInt();
            System.out.println("输出整数为:"+i);
        }else{
            System.out.println("输出数据不是整数。");
        }
        float f=0.0f;
        System.out.println("请输入一个小数");
        if (scanner1.hasNextFloat()){
            f=scanner1.nextFloat();
            System.out.println("输出小数为:"+f);
        }else{
            System.out.println("输出数据不是小数。");
        }
        scanner1.close();
    }
}
posted on 2022-05-19 17:10  糖果Tian  阅读(29)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3