System类除了out和err两个输出流外,还有in输入流的实例对象作为类成员。
Scanner类是Java的扫描器类,它可以从输入流中读取指定类型的数据和字符串。
package zero;
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()+"位数");
}
关键代码:
Scanner scanner =new Scanner(System.in);
String line=scanner.nextLine();
InputStream输入流以字节为单位来获取数据,而且需要复杂的判断并创建字节数组作为缓冲,最主要的是字节转换为字符时出现中文乱码,所以对字符数据的读取,应该使用扫描器进行封装,然后获取字符串的数据。