1. 编程学习网 > 编程教程 > java教程 > 第二十四篇 Java Scanner 类

第二十四篇 Java Scanner 类

Scannner类时用来获取用户输入的信息的,以下面例程为例,通过next()方法和nextLine()方法获取用户输入的字符串,使用前需要用hasNext和hasNextLine判断用户是否输入数据完毕。
Scanner one = new Scanner(System.in);
(创建Scanner对象)
next方法、
import java.util.Scanner;
 
public class ScannerDemo {
    public static void main(String[] args) {
        Scanner one = new Scanner(System.in);
        //接收数据
        //next方式接收字符串
        System.out.println("next方式接收:");
        // 判断是否还有输入
        if (one.hasNext()) {
            String str = one.next();
            System.out.println("输入的数据为:" + str);
        }
        one.close();
    }
}

nextLine 方法
import java.util.Scanner;
 
public class ScannerDemo {
    public static void main(String[] args) {
        Scanner one = new Scanner(System.in);
        //接收数据
        //nextLine方式接收字符串
        System.out.println("nextLine方式接收:");
        //判断是否还有输入
        if (one.hasNextLine()) {
            String str = one.nextLine();
            System.out.println("输入的数据为:" + str);
        }
        one.close();
    }
}

nexi()与nextLine()相比其一定要读取到有效的字符才能结束输入,遇有效字符之前地空白都会自动去掉,输入有效字符后空白才能作为分隔符或结束符生效,并且next()方法得不到带空格地字符串,nextLine()以enter作为结束符使用,其返回地是回车之前地字符,并且其可以获得空白。
Scanner类支持整形和浮点型数据的输入,但是最好在输入前使用hasNextXxx()方法进行验证,再使用nextXxx()读取。
import java.util.Scanner;
 
public class ScannerDemo {
    public static void main(String[] args) {
        Scanner one = new Scanner(System.in);
        // 从键盘接收数据
        int i = 0;
        float f = 0.0f;
        System.out.print("输入整数:");
        if (one.hasNextInt()) {
            // 判断输入的是否是整数
            i = one.nextInt();
            // 接收整数
            System.out.println("整数数据:" + i);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是整数!");
        }
        System.out.print("输入小数:");
        if (one.hasNextFloat()) {
            // 判断输入的是否是浮点数
            f = one.nextFloat();
            // 接收小数
            System.out.println("小数数据:" + f);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是小数!");
        }
        one.close();
    }
}

本文由IT教学网整理发布,转载请注明出处:http://www.itjx.com/jiaocheng/java/466.html

联系我们

在线咨询:点击这里给我发消息

咨询电话:400-998-2681

工作时间:7*24小时无休