Java Scanner 类,超详细整理,适合新手入门

简介: Java Scanner 类,超详细整理,适合新手入门

一、什么是 Java Scanner 类?

Java Scanner 类是 Java 中一个用于读取用户输入的类,它可以从标准输入、文件、字符串等多种输入源中读取数据,并将数据转换为 Java 中的各种数据类型。

二、引用数据类型

我们要学的Scanner类是属于引用数据类型,先了解下引用数据类型。

1、引用数据类型的定义

引用数据类型与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有相对固定的步骤或格式:

数据类型 变量名 = new 数据类型();

Scanner input = new Scanner(System.in);

每种引用数据类型都有其功能,可以调用该类型实例的功能。

变量名.方法名();

三、Scanner 类有哪些常用方法?

先导入java.util包,语法:import java.util.Scanner;

第一步 创建从控制台输入对象

第二步 提示语句

第三步 接受控制台的变量

第四步 输出或使用

1. import java.util.Scanner;
2. 
3. public class Text {
4. 
5. public static void main(String[] args) {
6. 
7. Scanner input = new Scanner(System.in);
8. 
9.         System.out.println("请输入你的年龄");
10. int age = input.nextInt();    \\从输入流中读取一个整数
11.         System.out.println("我的年龄是:" + age);
12. 
13.         System.out.println("请输入你的体重");
14. double weight = input.nextDouble(); \\从输入流中读取一个双精度浮点数。
15.         System.out.println("我的体重是:" + weight);
16. 
17.         System.out.println("请输入你的姓名");
18. String name = input.next();   \\从输入流中读取一个字符串。
19.         System.out.println("我的名字是:" + name);
20. 
21.         System.out.println("请输入你的性别");
22. char sex = input.next().charAt(0); \\从输入流中读取一个字符
23.         System.out.println("我的性别是:" + sex);
24.     }
25. }

hasNext()用法

Scanner 类的 hasNext() 方法用于检查输入流中是否还有数据可以读取。该方法返回一个 boolean 值,如果还有数据可以读取,则返回 true;否则返回 false。

1. Scanner scanner = new Scanner(System.in);
2. 
3. while (scanner.hasNext()) {
4. String line = scanner.nextLine();
5.     System.out.println("输入的内容是:" + line);
6. }

四、next() 与 nextLine() 区别

next():

1、一定要读取到有效字符后才可以结束输入。

2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。

3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

4、next() 不能得到带有空格的字符串。

nextLine():

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

2、可以获得空白。

五、使用 next 方法

1. import java.util.Scanner;
2. 
3. public class ScannerExample {
4. public static void main(String[] args) {
5. Scanner scanner = new Scanner(System.in);
6.         System.out.print("请输入一个字符串: ");
7. String str = scanner.next();   //next
8.         System.out.println("你输入的字符串是:" + str);
9.     }
10. }

六、使用 nextLine方法

1. import java.util.Scanner;
2. 
3. public class ScannerExample {
4. public static void main(String[] args) {
5. Scanner scanner = new Scanner(System.in);
6.         System.out.print("请输入一行字符串: ");
7. String str = scanner.nextLine();    //nextLine
8.         System.out.println("你输入的字符串是:" + str);
9.     }
10. }


目录
相关文章
|
2月前
|
存储 Oracle Java
java零基础学习者入门课程
本课程为Java零基础入门教程,涵盖环境搭建、变量、运算符、条件循环、数组及面向对象基础,每讲配示例代码与实践建议,助你循序渐进掌握核心知识,轻松迈入Java编程世界。
279 0
|
3月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
409 0
|
3月前
|
安全 Java 数据建模
Java记录类:简化数据载体的新选择
Java记录类:简化数据载体的新选择
239 101
|
3月前
|
安全 Java 开发者
Java记录类:简化数据载体的新方式
Java记录类:简化数据载体的新方式
290 100
|
2月前
|
存储 Java 索引
用Java语言实现一个自定义的ArrayList类
自定义MyArrayList类模拟Java ArrayList核心功能,支持泛型、动态扩容(1.5倍)、增删改查及越界检查,底层用Object数组实现,适合学习动态数组原理。
103 4
|
2月前
|
IDE JavaScript Java
在Java 11中,如何处理被弃用的类或接口?
在Java 11中,如何处理被弃用的类或接口?
169 5
|
2月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
160 1
|
2月前
|
Java Go 开发工具
【Java】(8)正则表达式的使用与常用类分享
正则表达式定义了字符串的模式。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
217 1
|
2月前
|
存储 Java 程序员
【Java】(6)全方面带你了解Java里的日期与时间内容,介绍 Calendar、GregorianCalendar、Date类
java.util 包提供了 Date 类来封装当前的日期和时间。Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
158 1
|
2月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
178 1