本文正在参加「Java主题月 – Java Debug笔记活动」,详情查看<活动链接>
提问:在Java中,如何获取用户的输入?
我尝试创建一个计算器,但由于不知道如何获得用户输入而无法使它正常工作。
在Java中,如何获取用户的输入?
回答1:
您可以根据要求使用以下任何选项。
1, Scanner类
import java.util.Scanner;
//...
Scanner scan = new Scanner(System.in);
String s = scan.next();
int i = scan.nextInt();
复制代码
2,BufferedReader和InputStreamReader 类
import java.io.BufferedReader;
import java.io.InputStreamReader;
//...
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int i = Integer.parseInt(s);
复制代码
3,DataInputStream 类
import java.io.DataInputStream;
//...
DataInputStream dis = new DataInputStream(System.in);
int i = dis.readInt();
复制代码
特别需要注意的是:类中的readLine方法DataInputStream已被弃用。要获取String值,应将先前的解决方案与BufferedReader一起使用
4,Console 类
import java.io.Console;
//...
Console console = System.console();
String s = console.readLine();
int i = Integer.parseInt(console.readLine());
复制代码
在某些IDE中,上面的方法效果不佳
最广泛使用的方法是Scanner,我个人更喜欢这种方法,因为它简单易行,并且具有将文本解析为原始数据的强大功能。
使用Scanner的优点:
1,Scanner类易于使用
2, 易于处理各种类型的数字型数据(int, short, byte, float, long 和 double)
3,在程序中忽略检查异常无疑是更方便的。程序员要规范起来,通过指定且捕获异常的方式让自己的程序更优雅。
4, 能够读取行,空格和正则表达式分隔的标记
所以,如果您输入大量数字,Scanner则会进行自动解析,这非常方便
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END