📅  最后修改于: 2023-12-03 14:52:46.123000             🧑  作者: Mango
在Java中,我们经常需要从用户输入中获取数组,本文将介绍如何在Java中获取数组作为输入。
Java中可以使用Scanner类来从命令行获取用户输入。下面是一个示例代码,演示如何从命令行获取一个包含n个整数的数组:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = scanner.nextInt();
}
scanner.close();
//do something with arr
}
}
在上面的代码中,我们首先使用Scanner.nextInt()方法从命令行获取数组的长度n。然后创建一个长度为n的数组,并使用for循环逐一读取数组中的每一个元素。
Java中可以使用BufferedReader类来从文件中读取输入。下面是一个示例代码,演示如何从文件中获取一个包含n个整数的数组:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("input.txt"))) {
int n = Integer.parseInt(br.readLine());
String[] input = br.readLine().split(" ");
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = Integer.parseInt(input[i]);
}
//do something with arr
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的代码中,我们首先使用BufferedReader.readLine()方法从文件中读取数组的长度n。然后使用readLine()方法再次读取一行输入,并使用split()方法将字符串拆分为一个字符串数组。最后,我们使用for循环将每个字符串转换为整数,并放入数组中。
如果要获取多维数组输入,可以使用Scanner和BufferedReader结合使用。下面是一个示例代码,演示如何获取一个包含n个m维整数数组的输入:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("input.txt"))) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int[][] arr = new int[n][m];
for (int i = 0; i < n; i++) {
String[] input = br.readLine().split(" ");
for (int j = 0; j < m; j++) {
arr[i][j] = Integer.parseInt(input[j]);
}
}
scanner.close();
//do something with arr
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的代码中,我们首先使用Scanner.nextInt()方法从命令行获取数组的宽度和长度。然后使用BufferedReader.readLine()方法从文件中读取每一行输入,并使用split()方法将字符串拆分为一个字符串数组。最后,使用for循环将每个字符串转换为整数,并放入多维数组中。
本文介绍了从命令行和文件中获取数组输入的方法。无论你需要获取一维数组、多维数组,还是从不同来源获取输入,都可以轻松地通过这些方法获取输入。