1 import java.io.BufferedReader; 2 import java.io.InputStreamReader; 3 import java.util.Scanner; 4 5 public class GetDataFromKeyboard { 6 public static void main(String[] args) { 7 8 // 2 methods TO get input from keyboard. 9 10 //Method1:Using Scanner 11 //一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。 12 //Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。 13 //System.in:“标准”输入流。此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。 14 Scanner sc = new Scanner(System.in); 15 String content=null; 16 if(sc.hasNext()){ 17 content=sc.next(); 18 } 19 System.out.println(content); 20 21 //Method2: Using BufferedReader 22 //BufferedReader:从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取 23 //InputStreamReader:InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。 24 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 25 String Content1 = null; 26 try { 27 Content1 = br.readLine(); 28 } catch (Exception e) { 29 30 } 31 System.out.println(Content1); 32 } 33 }