1.实例操作一:实现基本的数据输入
最简单的数据输入直接使用Scanner类的next()方法即可。
范例:输入数据
- package org.lxh.demo12.scannerdemo;
- import java.util.Scanner;
- public class ScannerDemo01 {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
// 从键盘接收数据- System.out.print("输入数据:");
- String str = scan.next();
- System.out.println("输入的数据为:"+str);
- }
- }
程序运行结果:
- 输入数据:helloworld
- 输入的数据为:helloworld
但是,如果在以上程序中输入了带有空格的内容,则只能取出空格之前的数据,代码如下所示:
- 输入数据:hello world !!!
- 输入的数据为:hello
从运行结果中可以发现,空格后的数据没有了,造成这样的结果是因为Scanner将空格当作了一个分隔符,所以为了保证程序的正确,可以将分隔符号修改为"/n(回车)"。
范例:修改输入数据的分隔符
- package org.lxh.demo12.scannerdemo;
- import java.util.Scanner;
- public class ScannerDemo02 {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
// 从键盘接收数据- scan.useDelimiter("/n") ;
// 修改输入数据的分隔符- System.out.print("输入数据:");
- String str = scan.next();
- System.out.println("输入的数据为:"+str);
- }
- }
程序运行结果:
- 输入数据:hello world
- 输入的数据为:hello world
以上代码完成了字符串内容的输入,如果要输入int或float类型的数据,在Scanner类中也有支持,但是在输入之前最好先使用hasNextXxx()方法进行验证,代码如下所示。
范例:输入int、float
- package org.lxh.demo12.scannerdemo;
- import java.util.Scanner;
- public class ScannerDemo03 {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
// 从键盘接收数据- int i = 0 ;
- float f = 0.0f ;
- System.out.print("输入整数:");
- if(scan.hasNextInt()){
// 判断输入的是否是整数- i = scan.nextInt() ;
// 接收整数- System.out.println("整数数据:" + i) ;
- }else{
// 输入错误的信息- System.out.println("输入的不是整数!") ;
- }
- System.out.print("输入小数:");
- if(scan.hasNextFloat()){
// 判断输入的是否是小数- f = scan.nextFloat() ;
// 接收小数- System.out.println("小数数据:" + f) ;
- }else{
// 输入错误的信息- System.out.println("输入的不是小数!") ;
- }
- }
- }
程序运行结果:
- 输入整数:3
- 整数数据:3
- 输入小数:5
- 小数数据:5.0