1. package bin; 
  2. import java.util.Scanner; 
  3. public class ScannerKeyBoardTest 
  4.     public static void main(String[] args) 
  5.     { 
  6.         //System.in代表标准输入,就是键盘输入 
  7.         Scanner sc = new Scanner(System.in);     
  8.         sc.useDelimiter("\n");//只把回车作为分隔符 
  9.         while(sc.hasNext()) 
  10.         { 
  11.                 System.out.println("键盘输入的是:"+ sc.next()); 
  12.         } 
  13.     }    

使用Scanner读取文件内容:

 


  
  1. package bin; 
  2. import java.util.Scanner; 
  3. import java.io.File; 
  4. public class ScannerFileTest 
  5.     public static void main(String[] args)throws Exception 
  6.     { 
  7.             //将一个File对象作为Scanner的构造器参数,Scanner读取文件内容 
  8.             Scanner sc = new Scanner(new File("F://javasrc/1006/bin/ScannerFileTest.java")); 
  9.             System.out.println("ScannerFileTest.java文件内容如下:"); 
  10.             while(sc.hasNext())//判断是否还有下一行 
  11.             { 
  12.                         System.out.println(sc.nextLine()); 
  13.             } 
  14.     }    

使用BufferedReader获取键盘输入:

 


  
  1. package bin; 
  2. import java.util.Scanner; 
  3. import java.io.BufferedReader; 
  4. import java.io.InputStreamReader; 
  5. public class KeyboardInTest 
  6.     public static void main(String[] args)throws Exception 
  7.     { 
  8.         //以System.in字节流为基础,创建一个BufferedReader对象 
  9.         BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
  10.         String line = null
  11.         //逐行读取键盘输入 
  12.         while((line = br.readLine())!= null
  13.         { 
  14.             System.out.println("用户输入的是:"+ line);     
  15.         } 
  16.     }    

用户的每次输入都被BufferedReader当成String对象,与Scanner不同的是,BufferrdReader不能读取基本类型输入项,他总是读取String对象。