方法一
通过Scanner类
nextLine()
- 以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
- 可以获得空白。
public class test {
public static void main(String args[]){
Scanner input = new Scanner(System.in);//用Scanner类来接受输入流
System.out.println("nextLine方式接收:");
String s = input.nextLine();
input.close();//关闭input
System.out.println(s);
/*nextLine方式接收:
nextLine space
nextLine space*/
}
}
next()
- 一定要读取到有效字符后才可以结束输入。
- 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- next() 不能得到带有空格的字符串。
public class test {
public static void main(String args[]){
Scanner input = new Scanner(System.in);//用Scanner类来接受输入流
System.out.println("next方式接收:");
String s = input.next();
input.close();//关闭input
System.out.println(s);
/*next方式接收:
next space
next*/
}
}
Scanner类也有next和hasNext来获取下一个元素和判断是否存在下一个元素,也有nextInt hasNextInt,nextDouble hasNextDouble
方法二
通过BufferedReader
public static void main(String args[]){
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));//BufferedReader类对象接受输入流
try {
String s = input.readLine();
System.out.println(s);
/* BufferedRead er
BufferedRead er*/
}catch (IOException e){
System.out.println("This is IOException");
}
}