Java获取用户的输入可以使用Scanner和流的方式,在这里我介绍两种方法
1.使用Scanner
import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner sc=new Scanner(System.in); while(sc.hasNext()) { System.out.println("输出:"+sc.next()); } }}使用Scanner的方式获取用户的输入的话,Scanner默认使用空格,Tab,回车作为输入项的分隔符。
可以使用sc.useDelimiter()方法来改变这种默认。
sc可以读取特定的数据,比如int,long看下图
从图中可以看到nextBoolean,nextFloat等等。
Scanner提供一个简单的方法一行一行的读取
import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner sc=new Scanner(System.in); while(sc.hasNextLine()) { System.out.println("输出:"+sc.nextLine()); } }}Scanner不仅可以读取用户键盘的输入,也可以读取文件
import java.io.File;import java.util.Scanner;public class Test { public static void main(String[] args) throws Exception { Scanner sc=new Scanner(new File("C:\\Users\\zhycheng\\Desktop\\Dota超神\\描述.txt")); while(sc.hasNextLine()) { System.out.println("输出:"+sc.nextLine()); } }}2.使用BufferedReader
需要指出的是Scanner是Java5提供的工具类,在Java5之前使用BufferedReader来读取
import java.io.BufferedReader;import java.io.InputStreamReader;public class Test { public static void main(String[] args) throws Exception { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String str=null; while((str=br.readLine())!=null) { System.out.println(str); } }}