Scanner对象


作用

我们可以通过Scanner类来获取用户的输入


所属包

​ java.util.Scanner java 工具类下


基本语法

Scannner s=new Scanner(System.in)

常用方法

  • next()、nextLine()获取输入的字符串
  • hasNext()、hasNextLine()一般在获取之前都要用这两个方法判断是否还有输入的数据

代码示例

    //创建一个扫描对象,用于接收键盘数据
Scanner scanner=new Scanner(System.in); System.out.println("使用next方式接收:"); //判断用户有没有输入字符串
if(scanner.hasNext()){
//使用next方式接收
String str=scanner.next();//程序等待用户输入完毕
System.out.println("输入的内容为:"+str);
} //凡是属于I/O流的类如果不关闭就会一直占用资源,要养成良好习惯用完就关掉
scanner.close();

输出结果

使用next方式接收:
hello world
输入的内容为:hello

可以发现只输出了hello,没有输出world,换成nextline试一下


 Scanner scanner = new Scanner(System.in);

 System.out.println("使用nextLine方法接收");

 //判断是否还有输入
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("输入的内容为:"+str);
} scanner.close();

输出结果

使用nextLine方法接收
hello world
输入的内容为:hello world

可以发现正确了,接下来我们来看一下next()和nextline()的区别


next()和nextline()的区别

  • next()

    1. 一定要读取到有效字符才可以结束输入。
    2. 对输入有效字符之前遇到的空格,next()方法会自动过滤掉。
    3. 只有输入有效字符后才将后面输入的空白作为分割符或者结束符
    4. next() 不能得到带有空格的字符串
  • nextLine()

    1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符串。

    2. 可以获得空白。


狂神说Java

Day004 Scanner对象的更多相关文章

  1. Java基础之一组有用的类——使用Scanner对象(TryScanner)

    控制台程序. java.util.Scanner类定义的对象使用正则表达式来扫描来自各种源的字符输入,并把输入显示为各种基本类型的一系列标记或者显示为字符串. 默认情况下,Scanner对象读取标记时 ...

  2. Scanner对象及其获取数据出现小问题和解决方案

    Scanner类简介: Java 5添加了java.util.Scanner类,我们可以通过Scanner类来获取用户输入.它是以前的StringTokenizer和Matcher类之间的某种结合.由 ...

  3. Scanner对象

    Scanner对象 通过Scanner类来获取用户的输入. 使用需导入 java.util.Scanner 包. 基本语法: Scanner s = new Scanner(System.in); n ...

  4. Day5 Scanner对象学习.

    Scanner对象 Java.until.Scanner 我们可以通过Scanner类来获取用户的输入. 基本语法: Scanner s = new Scanner (System . in) ; 通 ...

  5. Java基础之(七):Scanner对象

    用户交互Scanner Scanner对象 调用java.util.Scanner 可以通过Scanner类来获取用户的输入 基本语法: Scanner scanner = new Scanner(S ...

  6. scanner对象,顺序及选择结构

    scanner对象 基本语法: Scanner s = new Scanner(System.in) 使用next()和nextLine()读取前,使用hasNext()和hasNextLine()来 ...

  7. Day004 Scanner进阶

    Scanner进阶 例1 Scanner scanner = new Scanner(System.in); //从键盘接收数据 int i = 0; float f = 0.0f; System.o ...

  8. Java常用API(Scanner,Random)匿名对象

    API:即Application programming Interface,应用编程接口. Java中封装了许许多多的API供用户使用,Scanner与Random便是其中之一,API实际就是类,已 ...

  9. java 中的Scanner

    java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java API文档中列举了大量的API方法,但是都不怎 ...

随机推荐

  1. spring 最权威的知识点

    1.Spring是什么? Spring是一个轻量级的IoC和AOP容器框架.是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求.常见的配置方 ...

  2. 在SSM框架中如何将图片上传到数据库中

    今天我们来看看SSM中如何将图片转换成二进制,最后传入到自己的数据库中,好了,废话不多说,我们开始今天的学习,我这里用的编辑器是IDEA 1.导入图片上传需要的jar依赖包 1 <depende ...

  3. 一次VLAN标签引发的网络事件的处置

    一次VLAN标签引发的网络事件的处置 一.背景介绍 事件背景: HZ某分公司新装一套业务系统,通过一条专线和BJ总公司连通.分配给HZ公司的ip地址为:a.b.c.X,掩码24位,网关a.b.c.1. ...

  4. iovec结构体使用说明

    http://blog.163.com/lichuan0502@126/blog/static/9933534820111033228285/

  5. 2021精选 Java面试题附答案(一)

    1.什么是Java Java是一门面向对象的高级编程语言,不仅吸收了C++语言的各种优点,比如继承了C++语言面向对象的技术核心.还摒弃了C++里难以理解的多继承.指针等概念,,同时也增加了垃圾回收机 ...

  6. PAT B1030/A1085 完美数列

    给一个整数数列和正整数p,设这个数列中最大值M,最小值m,如果有M<=m*p,则称这个数列为完美数列,给一个p和一些正整数,从里面选择尽可能多的数,使他们构成一个完美数列,并输出最多可以选择的数 ...

  7. Linux服务器下JMeter的安装以及Xming的使用

    1.需要安装jdk和jmeter的安装包,都可以在官网得到下载.具体的操作按照下面的指令就可以 https://www.oracle.com/cn/java/technologies/javase/j ...

  8. Go-25-文件管理

    FileInfo接口 package main import ( "fmt" "os" ) // FileInfo 接口文件的信息包括文件名.文件大小.修改权限 ...

  9. Neo4j/cypher学习笔记与学习建议

    简介 本笔记的主要内容是 cypher 查询语言的编写与使用. 笔记主要整理自w3cschool上的neo4j教程以及Neo4j中文网所提供的cypher中文文档,此外还包括少量从其他个人博客与官方手 ...

  10. Day16_93_IO_FileInputStream_读取文件字节流read()方法(一)

    读取文件字节流read()方法 * 文件字节输入流:按照字节方式读取文件 * java.io.* java.io.InputStream; java.io.FileInputStream; read( ...