我从过去两个月开始一直在学习java,而且我也是新来的Stackoverflow。在我的课堂上,有人告诉我有7种方法可以让用户输入并读取它(或者使用它进行计算)。但是,他们教给我们的只有一个,那就是使用inputStreamReader。 但尽管我已经通过Stackoverflow了解,但使用Scanner类是一种常规做法。我想知道哪种方法是最好的,如果它确实对我们使用的方法有什么影响。从用户处获取输入
在此先感谢您的帮助。
我从过去两个月开始一直在学习java,而且我也是新来的Stackoverflow。在我的课堂上,有人告诉我有7种方法可以让用户输入并读取它(或者使用它进行计算)。但是,他们教给我们的只有一个,那就是使用inputStreamReader。 但尽管我已经通过Stackoverflow了解,但使用Scanner类是一种常规做法。我想知道哪种方法是最好的,如果它确实对我们使用的方法有什么影响。从用户处获取输入
在此先感谢您的帮助。
I want to know which method is the best one?
没有人能回答这个问题,一般为你!你必须使用最适合你的要求。
以下是在Java中使用的所有I/O方法的link。
对话框也不错。 http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html 请看“从对话框获取用户输入”。
我知道对话很好,我知道JOptionPane和所有的练习。但我认为对话框通常用于设计基于GUI的应用程序。当我需要通过CUI与用户交互时,我不认为对话会是一个好方法,不是吗? – Ashima
我通常更喜欢使用Scanner
类从输入行读取。
随着Scanner
类你可以请求特定类型(double, int, ..., string
)。这也将为你做验证测试。
System.in
是你将从标准输入设备,即键盘输入的内容。休息都取决于需要,你是想先缓冲还是直接从流中读取等等。扫描器类在输入之前是有帮助的,因为它有几种特殊类型输入的方法,用于数据类型而不是铸造成Int或Long等。
可以使用Scanner,InputStreamReader等。最好的方法取决于你的要求。
这取决于你需要做什么...... – MadProgrammer
这是我想问什么时候应该使用扫描仪,什么时候应该使用inputStreamReader。比如,Scanner可以做些什么,但是无法通过inputStreamReader实现? – Ashima
你问过之前你是否经常寻找答案?检查这篇文章http://stackoverflow.com/questions/10067465/scanner-vs-inputstreamreader – wea