Java获取用户输入

概述

当需要输入文字资料到程序中时,可以使用标准的InputStream流System.in获取位元组的资料,并可通过其提供的read()方法取得字节的ASCII编码整数。

Scanner

获取用户输入字符串:

import java.util.Scanner;

public class HelloCc {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Please input your name: ");
        System.out.printf("Hello! %s!", scanner.next());
    }
}
复制代码

执行结果:

Please input your name:
Hello! Cc!

类似方法:
nextInt(),nextFloat(),nextBoolean,nextLine()

注意:
Scanner的next()方法获取的依据是空白字节,无论是空格键、tab键、enter键,Scanner都会传入下一个输入

BufferedReader

尽管Scanner使用起来很方便,但是它以空白字符串区隔每一个字符,当用户输入一个包含空白字节的完整字符串时就并不适用。这时就可以使用java.io包构建BufferedReader为标准输入串流建立缓冲区。

获取用户输入(包括空白字节):

import java.io.*;

public class HelloCc {
    public static void main(String[] args) throws IOException {
        BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Please input text: ");
        String text = buf.readLine();
        System.out.println(text);
    }
}
复制代码

执行结果:

Please input text:
I am Cc!

注意:
readLine()方法必须处理IOException异常

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享