聊聊java在运行过程中接收用户输入的方法

概述

java在运行时接受用户输入的方法主要可以通过两个类来实现:

  • Scanner类
  • BufferReader类

关于Scanner类

Scanner类是一个基于正则表达式的文本扫描器,它可以从文件,输入流,字符串中解析出基本类型值和字符串值。
Scanner类提供了多种构造函数,因此他可以根据不同的构造函数接受不同的数据源:文件,输入流和字符串等。

Scanner提供的主要方法:
hasNext()方法:判断是否还有下一个输入项。此外还提供了haxNextXxxx()方法,这个Xxxxx方法可以使Int、Long等等
next()方法:获取下一个输入项。此外还提供了nextXxxx()。
useDelimiter()方法:设置分隔符。
事实上,Scanner还提供了两个简单的方法来进行逐行读取
boolean hasNextLine():返回输入源中是否还有下一行
String nextLine():返回输入源中中下一行的字符串。
exp:

package com.java.environment;

import java.util.Scanner;

public class scanner {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//Scanner sc=new Scanner(new File("test.c"));
while(sc.hasNext()){
System.out.println(sc.next());
}
sc.close();
}
}

关于BufferedReader类

这个类是比较老的类了,BufferedReader是Java IO流中的一个字符、包装流,它必须建立在另一个字符流的基础上。
System.in本身是字节流,所以使用BufferedReader的话要使用InputStreamBuffer将输入字节流包装成字符流才能使用。

public static void main(String[] args){
BufferedReader br = new BufferedReader(new InputStreamBuffer(System.in));
String line = null;
while((line = br.readLine())!=null){
System.out.println("用户输入的内容是:"+line);
}
}

你可能感兴趣的:(聊聊java在运行过程中接收用户输入的方法)