所以我试图找到用户放入的数组的最小值和最大值。
这是我的代码
public static void main(String[] args) {
int[] a = new int[args.length];
for (int i = 0; i < args.length; i++) {
a[i] = Integer.parseInt(args[i]);
int max = a[0];
for (int j = 1; j < args.length; j++) {
if (a[j] > max) {
max = a[j];
}
}
System.out.println("the maximum value of the array is " + max);
}
}
但是我得到的输出是我输入的每个数字。我的错误是什么?
让我们来看看这个过程。因为这是一个 int 数组,所以值被初始化为0
. 在第一个 for 循环中,我们将第一个 int 分配给a[0]
。然后在第二个 for 循环中,我们检查数组中的每个值是否为最大值(因此检查第一个值与零负载)然后退出嵌套的 for 循环并打印语句(a[0]
如果值为,则为正值) )。
现在我们进行外循环的第二个循环,如果它再次变大,这个值将被打印,否则第一个值将被重新打印(你的数组是否是按升序排列的?)对每个值依此类推。
正如评论的那样,一个循环就足够了,并确保您的打印语句在外部 for 循环之外
希望这可以帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句