Java经典编程300例之实例012 从控制台接收输入字符

实例说明
System类除了包含out和err两个输出流外,还有in输入流的实例对象作为类成员,它可以接收用户的输入。本实例通过该输入流实现从控制台接收用户输入文本,并提示该文本的长度信息。


实现过程
新建Java源文件InputCode.java,在其中创建InputCode类,并完成该类的main()方法,在该方法中创建Scanner扫描器来封装System类的in输入流,然后提示用户输入身份证号,并输出用户身份证号的位数。

源代码如下:

import java.util.Scanner;

public class InputCode {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入你的身份证号:");
        String line = scanner.nextLine();
        System.out.println("原来你的身份证号是" + line.length() + "位数字的啊");
    }
}

编译源代码

$ javac InputCode.java

运行class文件
$ java InputCode
请输入你的身份证号:
2206021990xxxxxxxx
原来你身份证号是18位数字的啊

技术要点
本实例的关键技术就是用到了System类的输入流也就是类变量in,它可以接收用户的输入信息,并且是标准的输入流实例对象。另外,Scanner类是Java的扫描器类,它可以从输入流中读取指定类型的数据或字符串。本实例使用Scanner类封装了输入流对象,并使用nextLine()方法从输入流中获取用户输入的整行文本字符串。该方法的声明如下:
public String nextLine()
返回值:从扫描器封装的输入流中获取一行文本字符串作为方法的返回值。

总结
创建Scanner扫描器来封装System类的in输入流;
使用nextLine()方法从输入流中获取用户输入的整行文本字符串;
使用String类的length()方法获取字符串的长度。




你可能感兴趣的:(java,Scanner,system.in)