java如何输入数组
输入数组的方法
在Java中,输入数组可以通过多种方式实现,具体取决于输入来源(如用户输入、文件读取等)。以下是几种常见的方法:
使用Scanner类从控制台输入
通过java.util.Scanner类可以方便地从控制台读取用户输入的数组。以下是一个示例代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("输入数组长度: ");
int n = scanner.nextInt();
int[] arr = new int[n];
System.out.println("输入数组元素:");
for (int i = 0; i < n; i++) {
arr[i] = scanner.nextInt();
}
System.out.println("输入的数组为:");
for (int num : arr) {
System.out.print(num + " ");
}
scanner.close();
}
}
使用BufferedReader类从控制台输入
BufferedReader类提供了更高效的输入方式,适合处理大量数据:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("输入数组长度: ");
int n = Integer.parseInt(br.readLine());
int[] arr = new int[n];
System.out.println("输入数组元素 (空格分隔):");
String[] input = br.readLine().split(" ");
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(input[i]);
}
System.out.println("输入的数组为:");
for (int num : arr) {
System.out.print(num + " ");
}
}
}
从文件读取数组
如果数组数据存储在文件中,可以使用Scanner或BufferedReader读取文件内容:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws FileNotFoundException {
Scanner fileScanner = new Scanner(new File("input.txt"));
int n = fileScanner.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = fileScanner.nextInt();
}
System.out.println("从文件读取的数组为:");
for (int num : arr) {
System.out.print(num + " ");
}
fileScanner.close();
}
}
使用命令行参数输入
可以通过命令行参数传递数组数据:
public class Main {
public static void main(String[] args) {
int[] arr = new int[args.length];
for (int i = 0; i < args.length; i++) {
arr[i] = Integer.parseInt(args[i]);
}
System.out.println("从命令行输入的数组为:");
for (int num : arr) {
System.out.print(num + " ");
}
}
}
运行命令示例:

java Main 1 2 3 4 5
注意事项
- 输入数据时需要确保类型匹配,避免输入非数字字符导致异常。
- 使用
try-catch块处理可能的输入异常(如NumberFormatException)。 - 对于大型数组,建议使用
BufferedReader以提高性能。






