Java控制台输入数字
Java作为一门面向对象编程语言,在实践中运用广泛,尤其在开发Web应用和Android应用时,Java更是不可或缺。在Java中,控制台输入数字是常见的需求,因此本文将详细介绍Java在控制台输入数字的相关知识,包括Scanner类、BufferedReader类和System.in等。
Scanner类
Scanner类是Java中常用的输入类,可以方便地从控制台读取输入数据。开发人员可以在程序中通过Scanner类的对象获取控制台输入的数字,以下是Scanner类的使用方法:
```java
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入数字:");
int num = scanner.nextInt();
System.out.println("您输入的数字是:" + num);
}
}
```
在上面的程序中,我们创建了一个Scanner对象,然后使用nextInt()方法获取用户从控制台输入的数字,最后将该数字传递给num变量,并在控制台上输出该数字。
BufferedReader类
除了Scanner类,Java中还存在BufferedReader类,该类也可以从控制台获取用户输入的数字,但与Scanner类不同的是,BufferedReader类需要开发人员手动处理输入流。以下是BufferedReader类的使用方法:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BufferedReaderDemo {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
在上面的程序中,我们使用BufferedReader类获取控制台输入,首先使用InputStreamReader类将System.in包装为输入流,然后再使用BufferedReader类将输入流包装为字符流。通过readLine()方法获取用户输入的数字,最后将该数字传递给num变量。
System.in
如果您觉得使用Scanner类和BufferedReader类过于繁琐,还可以使用System.in直接从控制台获取用户输入的数字,以下是System.in的使用方法:
public class SystemInDemo {
byte[] bytes = new byte[1024];
int len = System.in.read(bytes);
int num = Integer.parseInt(new String(bytes, 0, len - 1));
在上面的程序中,我们使用System.in获取控制台输入,首先创建一个字节数组,然后使用read()方法获取用户输入的字节流,最后将字节流转换为数字。
本文分别介绍了Java控制台输入数字的三种方法:Scanner类、BufferedReader类和System.in。Scanner类易于使用,但效率较低;BufferedReader类需要手动处理输入流,但效率较高;System.in简单方便,但需要开发人员手动转换输入流。开发人员可以根据实际需求选择相应的方法,提高代码的效率和可读性。
网友留言(0)