Java的几种键盘输入

1. 键盘输入单个变量

  • import 包
	import java.util.Scanner;
  • 关键语句
	Scanner input  = new Scanner(System.in);
	//字符串
	String str = input.next();
	
	//整型
	int num = input.nextInt();
	
	input.close(); //Hey, man. 要有始有终哦

2. 键盘输入多个变量(数组 - 指定数组长度用于结束)

  • import 包
	import java.util.Scanner;
  • 关键语句
	Scanner input = new Scanner(System.in);
	int len = input.nextInt(); // 用于指定数组长度
	int[] nums= new int[len]; // 数组长度已提前指定
	
	for(int i = 0; i < len; i++)
	{
		nums[i] = input.nextInt();
	}
	
	input.close(); // 不能始乱终弃.
	

3. 键盘输入多个变量(数组 - 回车结束)

  • import 包
	import java.util.Scanner;
  • 关键语句
	Scanner input = new Scanner(System.in);
	
	String Value = input.nextLine(); // 先以字符串存放输入的数值
	String[] nums = Value.split(" "); // 用空格分割,再强制类型转换
	
	// 其实还是提前指定了数组长度 - num.length
	int[] array = new int[nums.length];
	for(int i = 0; i < nums.length; i++)
	{
		array[i] = Integer.parseInt(nums[i]);
	}

	input.close();

4. 键盘输入多个变量(ArrayList - 回车结束)

  • import 包
	import java.util.Scanner;
	import java.util.ArrayList;
  • 关键语句
	Scanner input = new Scanner(System.in);

	String Value = input.nextLine(); // 先以字符串存放输入的数值
	String[] nums = Value.split(" "); // 用空格分割,再强制类型转换
	
	ArrayList<Integer> arrayList=new ArrayList<>();
	// 不用提前指定数组长度了,arrayList.add即可
	for(int i = 0; i < nums.length; i++)
	{
		arrayList.add(Integer.parseInt(nums[i]));
	}
	// arrayList基本操作:
	// arrayList.size()
	// arrayList.add(val)
	// arrayList.get(i)

	input.close();

5. 键盘输入多个变量(以特殊字符结束输入)

  • import 包
	import java.util.Scanner;
	import java.util.ArrayList;
  • 关键语句
	Scanner input = new Scanner(System.in);

	String str = "";
	
	ArrayList<String> words = new ArrayList<String>();
	// 这里举例特殊英文字符:“.”
	while( !(  str = input.nextLine()  ).equals(".")  )
	{
		// 每行为一个整体
		words.add(str);
	}
	input.close();

	// 测试一下
	for(int i = 0; i < words.size(); i++)
	{
		System.out.println(words.get(i));
	}

追加小知识

  • 如果函数名称为public int[] func(int[] Array, int arg),即返回值类型为int[]
  • 则可用如下代码进行直接返回:
class Solution {
    public int[] func(int[] Array, int arg) {
    
        // Coding Here

		//直接组合两个值,然后返回。
		return new int[]{num1, num2};
    }
}


初稿完成时间:2022年2月24日 18:34:00
再稿完成时间:2022年2月24日 20:11:00
预估有效期限:unknown(depends on Java)

(水平有限,欢迎交流指正,progress together。)

-完-