一、Scanner方式输入数组
首先介绍使用Scanner方式输入数组的方法。Scanner是Java的一个输入类,在使用时需要在文件头部导入java.util.Scanner类。下面是使用Scanner实现数组输入的完整示例代码:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); int[] arr = new int[5]; for (int i = 0; i < arr.length; i++) { arr[i] = input.nextInt(); } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } }
代码解析:首先利用Scanner类创建对象input,之后定一个数组arr并给其长度为5。随后使用for循环实现5个数字从键盘输入到数组arr中,利用for循环再次遍历该数组并输出。
二、BufferedReader方式输入数组
除Scanner,还有BufferedReader方式实现数组输入。需要在文件头部导入java.io.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 input = new BufferedReader(new InputStreamReader(System.in)); int[] arr = new int[5]; String[] str = input.readLine().split(" "); for (int i = 0; i < arr.length; i++) { arr[i] = Integer.parseInt(str[i]); } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } }
代码解析:首先实例化BufferedReader类,然后定义数组arr并给其长度为5。在输入时,使用readLine()读取一行字符串,split(" ")实现空格的切分。得到的字符串数组str里存储了用户输入的数字。再利用for循环遍历该数组,String转成int类型并存放到arr数组里。使用for循环再次遍历该数组并输出。
三、Console方式输入数组
Java还可以使用Console方式实现数组输入,Console是Java自带的输入类。下面是Console数组输入的示例代码:
public static void main(String[] args) { Console console = System.console(); if (console == null) { System.out.println("console is unavailable"); return; } int[] arr = new int[5]; for (int i = 0; i < arr.length; i++) { arr[i] = Integer.parseInt(console.readLine()); } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } }
代码解析:首先利用System.console()得到Console对象,之后设置arr数组并初始化。使用for循环将用户输入的数字存储到arr数组中。最后遍历该数组,并输出数组中的元素。
四、总结
本文介绍了Java数组的三种输入方式,分别是使用Scanner、BufferedReader和Console方式。Scanner适用于简单的数字输入,BufferedReader适用于复杂字符串的处理,而Console适用于需要进行输入密码等操作的场景。选择不同的输入方式可以提高代码效率和舒适性。