输入和输出是任何编程语言的两个主要基本方面。键盘和屏幕分别是进行输入和输出的基本设备。用户输入对于使应用程序具有交互性非常重要。通过收集输入,java 程序可以自定义其输出、执行特定操作或调整其功能以满足不同用户的需求。不同的 java 包包含其他类来获取用户的输入。本文讨论如何用 java 获取用户的输入。
在 java 中获取用户输入的方法在java程序中,有三种从用户获取输入的方式。它们如下所示-
使用scanner类 使用bufferedreader类 使用console类 scanner类scanner 类用于在 java 中获取用户的输入。它是获取用户输入的最常用且最简单的方法之一。它是 java.util 包的一部分。我们可以使用 scanner 类获取原始类型的输入,如 int、char、float、double 等。它更容易阅读,使其成为最常见的选择。
语法scanner scn=new scanner(system.in);
导入 java.util 包对于使用 scanner 类非常重要。在上面的语句中,我们创建了一个 scanner 类构造函数,然后传递了 system.in 参数,使其能够从标准输入流中读取。
扫描仪类方法 nextint() 的翻译为:用于读取并返回下一个整数值。
nextfloat() 用于读取并返回下一个浮点值
nextdouble() 用于读取并返回下一个双精度值。
下一个() 它用于读取并返回下一个单词的值作为字符串。
nextline() 它用于读取并返回下一个多个单词值作为字符串
nextlong() 它用于读取并返回下一个长整型值。
nextshort() 它用于读取并返回下一个短整型值。
nextbyte() 用于读取并返回下一个字节值。
nextboolean() 它用于读取并返回下一个布尔值。
example的中文翻译为:示例以下是使用 java 中的 scanner 类获取用户输入的示例。
//import the java.util packageimport java.util.*; public class main { public static void main(string args[]) { // to take the input, use the scanner class scanner scn = new scanner(system.in); system.out.println(enter your roll no); int roll_no = scn.nextint(); //integer input system.out.println(enter your name); string name= scn.next(); //string input system.out.println(enter your marks); double marks = scn.nextdouble(); //double input system.out.println(your roll no is- + roll_no+ your name is- +name+ and marks- +marks); }}
输出以下是上述代码的输出
enter your roll no1enter your namesitaenter your marks99your roll no is- 1 your name is- sita and marks- 99.0
explanation 的中文翻译为:解释在上面的代码中,我们在java中创建了一个scanner类。我们以int、string和double的形式获取了三个不同的用户输入。获取输入后,我们将它们打印出来
scanner类的优点易于实施。
简单的方法。
scanner类的缺点速度较慢。
它不是同步的,因此不适合多线程。
bufferedreader 类bufferedreader是java中另一个用于从用户获取输入的类。它在jdk 1.0中引入,并且是从用户获取输入的基本方法。它位于java.io包中。
语法bufferedreader br= new bufferedreader(new inputstreamreader(system.in));
这意味着我们创建了一个bufferedreader对象。inputstreamreader类用于将输入的字节流转换为bufferedreader可以理解的字符流。system.in是标准输入,默认为键盘。
readline()方法用于读取一行并将其存储为字符串。如果字符串需要转换为其他数据类型,必须显式进行类型转换。
example的中文翻译为:示例以下是使用 java 中的 bufferedreader 类获取用户输入的示例。
//import the java.io packageimport java.io.*; public class main { public static void main(string args[]) throws ioexception { // to take the input, use the bufferedreader class bufferedreader br= new bufferedreader(new inputstreamreader(system.in)); system.out.println(enter your roll no); int roll_no = integer.parseint(br.readline()); //integer input system.out.println(enter your name); string name= br.readline(); //string input system.out.println(enter your marks); double marks = double.parsedouble(br.readline()); //double input system.out.println(your roll no is- + roll_no+ your name is- +name+ and marks- +marks); }}
输出以下是上述代码的输出 -
enter your roll no1enter your namesitaenter your marks94your roll no is- 1 your name is- sita and marks- 94.0
explanation 的中文翻译为:解释<p>创建了一个名为br的bufferedreader对象。它使用inputstreamreader类从用户那里获取输入,该类将输入的字节转换为字符。我们已经从用户那里获取了输入,但它的默认值是一个字符串。然后将其强制转换为所需的数据类型
bufferedreader类的优点更快的性能
可以与多个线程一起使用。
bufferedreader类的缺点只能接受字符串输入。稍后必须将它们转换为所需的数据类型。
可能需要导入多个库才能使用 bufferedreader 类。
控制台类使用 console 类是通过命令行获取用户输入的另一种方法。这是在 jdk 1.5 中引入的,并且存在于 java.io 包中。 console 类对于从控制台读取密码非常有用。此外,与其他方法相比,它的实例化很简单。 java.io.console 库对于 console 类至关重要。
语法console c = system.console();
example的中文翻译为:示例以下是使用 java 中的 console 类获取用户输入的示例。
//import the java.io packageimport java.io.*; public class main { public static void main(string args[]) throws ioexception { system.out.println(enter your roll no); int roll_no = integer.parseint(system.console().readline()); //integer input system.out.println(enter your name); string name = system.console().readline(); system.out.println(enter your marks); double marks = double.parsedouble(system.console().readline()); //double input system.out.println(your roll no is- + roll_no+ your name is- +name+ and marks- +marks); }}
输出以下是上述代码的输出 -
enter your roll no1enter your namesitaenter your marks96your roll no is- 1 your name is- sita and marks- 96.0
explanation 的中文翻译为:解释在上面的代码中,我们直接使用system.console()函数读取了用户输入。
console类的优点我们可以安全地输入密码,因为在输入过程中密码是不可见的 这个类使用了同步方法
bufferedreader类的缺点不能在像ide这样的环境中使用,其中所有输入不是一次性给出的。
因此,我们了解了如何在java中从用户那里获取输入。根据个人偏好,我们可以使用其中任何一种。
以上就是如何在java中接受用户输入?的详细内容。