用Java数组找最小值时反复输出

问题遇到的现象和发生背景

能实现找出最小值的目的,但每输入一次数字就有输出

问题相关代码,请勿粘贴截图

import java.util.Scanner;
public class NewClass8 {
public static void main(String[] args){
int a,n;
Scanner input=new Scanner(System.in);
System.out.print("Length of Array : ");
n = input.nextInt();
int[] x = new int[n];
for(int i=0; i<n;i++)
{
System.out.print("Value of x["+i+"] : ");
x[i] = input.nextInt();
int min = x[0];
for(int m = 0; m<x.length; m++)
{
if(min>x[m]) min = x[m];
}
System.out.println ("Smallest Element is : "+min);
}
}
}

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

能直接输出结果,不在输入过程中出现


import java.util.Scanner;

public class NewClass8 {
    public static void main(String[] args) {
        int n;
        Scanner input = new Scanner(System.in);
        System.out.print("Length of Array : ");
        n = input.nextInt();
        int[] x = new int[n];
        for (int i = 0; i < n; i++) {
            System.out.print("Value of x[" + i + "] : ");
            x[i] = input.nextInt();
        }

        int min = x[0];
        for (int m = 0; m < x.length; m++) {
            if (min > x[m]) min = x[m];
        }
        System.out.println("Smallest Element is : " + min);
    }
}