打印数组中的最小数字(Java)

打印数组中的最小数字(Java),java,arrays,Java,Arrays,虽然我看到了一些关于同一主题的问题,但它们对我的情况不够具体 import java.util.*; public class Kap3Oppg5 { public static void main(String[] args) { int x = 0; int tabell[] = new int[10]; int heltall; Scanner in = new Scanner(System.in); int minstetall = tabell[

虽然我看到了一些关于同一主题的问题,但它们对我的情况不够具体

import java.util.*;
public class Kap3Oppg5 {
public static void main(String[] args) {
    int x = 0;
    int tabell[] = new int[10];
    int heltall;
    Scanner in = new Scanner(System.in);
    int minstetall = tabell[0];

    while (x < 10) {
        System.out.println("Tast inn neste tall:");
        heltall = in.nextInt();
        tabell[x] = heltall;
        x = x + 1;
    }

    for (int i=0;i<tabell.length;i++) {
        if (tabell[i] < tabell[0])
            minstetall = tabell[i];

    }
    System.out.print(minstetall);
}

}
import java.util.*;
公共类Kap3Oppg5{
公共静态void main(字符串[]args){
int x=0;
int tabell[]=新int[10];
国际高等教育学院;
扫描仪输入=新扫描仪(系统输入);
int minstetall=tabell[0];
而(x<10){
System.out.println(“内斯特塔勒美食酒店”);
heltall=in.nextInt();
塔贝尔[x]=heltall;
x=x+1;
}

对于(int i=0;iif中的测试始终针对数组中的第一个元素进行测试。您可能希望针对到目前为止找到的最低数量进行测试:

if (tabell[i] < minstetall) { ...
if(tabell[i]
因为每次与数组的第一个元素进行比较时。

如果(tabell[i]
是错误的,则应该是:

if (tabell[i] < minstetall)
if(tabell[i]

您正在与第一个元素进行比较。当前,如果数组的第一个元素碰巧包含最低值,则您将获得正确的结果。,否则当前代码将失败。

这是因为在这一行中您比较了错误的内容:

if (tabell[i] < tabell[0])
if(tabell[i]
应该是

if (tabell[i] < minstetall)
if(tabell[i]
旁注:您可以使用
列表来代替
int[]
并调用
int min=Collections.min(列表);