Input dan output ialah dua aspek asas utama mana-mana bahasa pengaturcaraan. Papan kekunci dan skrin adalah peranti asas untuk input dan output masing-masing. Input pengguna sangat penting untuk menjadikan sesuatu aplikasi interaktif. Dengan mengumpul input, program Java boleh menyesuaikan outputnya, melaksanakan operasi tertentu, atau melaraskan fungsinya untuk memenuhi keperluan pengguna yang berbeza. Pakej Java yang berbeza mengandungi kelas lain untuk mendapatkan input daripada pengguna. Artikel ini membincangkan cara mendapatkan input pengguna menggunakan Java.
Bagaimana untuk mendapatkan input pengguna dalam Java
Dalam program Java, terdapat tiga cara untuk mendapatkan input daripada pengguna. Mereka adalah seperti berikut-
Menggunakan kelas Pengimbas
Menggunakan kelas BufferedReader
Menggunakan kelas Console
Kelas pengimbas
Kelas pengimbas digunakan untuk mendapatkan input pengguna dalam Java. Ia adalah salah satu cara yang paling biasa dan paling mudah untuk mendapatkan input pengguna. Ia adalah sebahagian daripada pakej java.util. Kita boleh menggunakan kelas Pengimbas untuk mendapatkan input jenis primitif seperti int, char, float, double, dll. Ia lebih mudah dibaca, menjadikannya pilihan yang paling biasa.
#🎜🎜 #Tatabahasa
Scanner scn=new Scanner(System.in);
Mengimport pakej java.util adalah sangat penting untuk menggunakan kelas Pengimbas. Dalam pernyataan di atas, kami mencipta pembina kelas Pengimbas dan kemudian lulus parameter System.in untuk membolehkannya membaca daripada aliran input standard.
Kaedah kelas pengimbas
Terjemahan nextInt() ialah:
| digunakan untuk membaca dan mengembalikan nilai integer seterusnya.
|
nextFloat()
| Digunakan untuk membaca dan mengembalikan nilai titik terapung seterusnya
|
nextDouble()
| digunakan untuk membaca dan mengembalikan nilai berganda seterusnya.
|
Seterusnya()
| Ia digunakan untuk membaca dan mengembalikan nilai perkataan seterusnya sebagai rentetan.
|
nextLine()
| Ia digunakan untuk membaca dan mengembalikan nilai berbilang perkataan seterusnya sebagai rentetan
|
nextLong()
| Ia digunakan untuk membaca dan mengembalikan nilai panjang seterusnya.
|
nextShort()
| Ia digunakan untuk membaca dan mengembalikan nilai integer pendek seterusnya.
|
nextByte()
| Digunakan untuk membaca dan mengembalikan nilai bait seterusnya.
|
nextBoolean()
| Ia digunakan untuk membaca dan mengembalikan nilai boolean seterusnya.
|
Example
的中文翻译为:示例
以下是使用 Java 中的 Scanner 类获取用户输入的示例。
//import the java.util package
import 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 no
1
Enter your name
Sita
Enter your marks
99
Your 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 package
import 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 no
1
Enter your name
Sita
Enter your marks
94
Your roll no is- 1 your name is- Sita and marks- 94.0
Explanation
的中文翻译为:解释
创建了一个名为"br"的BufferedReader对象。它使用InputStreamReader类从用户那里获取输入,该类将输入的字节转换为字符。我们已经从用户那里获取了输入,但它的默认值是一个字符串。然后将其强制转换为所需的数据类型
BufferedReader类的优点
BufferedReader类的缺点
控制台类
使用 Console 类是通过命令行获取用户输入的另一种方法。这是在 JDK 1.5 中引入的,并且存在于 java.io 包中。 Console 类对于从控制台读取密码非常有用。此外,与其他方法相比,它的实例化很简单。 java.io.Console 库对于 Console 类至关重要。
语法
Console c = System.console();
Example
的中文翻译为:示例
以下是使用 Java 中的 Console 类获取用户输入的示例。
//import the java.io package
import 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 no
1
Enter your name
Sita
Enter your marks
96
Your roll no is- 1 your name is- Sita and marks- 96.0
Explanation
的中文翻译为:解释
在上面的代码中,我们直接使用System.console()函数读取了用户输入。
Console类的优点
我们可以安全地输入密码,因为在输入过程中密码是不可见的
这个类使用了同步方法
BufferedReader类的缺点
因此,我们了解了如何在Java中从用户那里获取输入。根据个人偏好,我们可以使用其中任何一种。
Atas ialah kandungan terperinci Bagaimana untuk menerima input pengguna dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!