WorkSkill整理之 java用Scanner 类输入数组并打印

输入不确定长度的数组

import java.util.*;
public static void main(String[] args){
	System.out.println("请输入一串整数,并用空格隔开,以回车结束");
	Scanner sc = new Scanner(System.in); 
	String[]   str = sc.nextLine().split(" "); 
	int num[]=new int[str.length];
	for(int i=0;i<num.length;i++){
	    num[i]=Integer.parseInt(nums[i]);
	}
        System.out.println("输入的数组为:"+Arrays.toString(a));
}

参考大神写法

//一组无序的自然数集合,由0,1,2... ...,n的数字和一个的数字X(X>=0 && X<=n)组成,请从集合中找出这个重复数字X。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
 
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        String[] numstr=br.readLine().split(" ");
        int length=0;//记录集合元素数
 
        HashSet<String> hs=new HashSet<>();
        for(int i=0;i<numstr.length;i++)
        {
            length=hs.size();
            hs.add(numstr[i]);
            if(length==hs.size()){//没存入
                System.out.println(numstr[i]);
                break;
            }
        }
    }
}

自定义数组的长度

//一组无序的自然数集合,由0,1,2... ...,n的数字和一个的数字X(X>=0 && X<=n)组成,请从集合中找出这个重复数字X。
import java.util.*;
public class ArrayIO{
    public static void main(String[] args){
        int ARRAYLENGTH = 8;  //指定数组长度
        int a[] = new int[ARRAYLENGTH];
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入数组,并以回车结束:");
        for(int i = 0; i < a.length; i++){
            a[i] = sc.nextInt();
        }
        //直接打印数组a出来的是数组的首地址,必须用toString方法
        System.out.println("数组a为:" + Arrays.toString(a)); 
    }
}

输出

请输入数组,并以回车结束:
1 2 3 4 8 7 6 5
数组a为:[1, 2, 3, 4, 8, 7, 6, 5]
原文地址:https://www.cnblogs.com/liyao0312/p/11202393.html