public class Numbers {
public static void main(String[] args) {
// TODO Auto-generated method stub
int w[] = new int[] { 5, 4, 3, 2, 3 };
int max = 0;
int min = 0;
for (int i = 0; i < w.length; i++) {
if (w[i] > w[i]++) {
w[i] = max;
}
for (int j = 0; j < w.length; j++) {
if (w[j] < w[j]++) {
w[j] = min;
}
System.out.println(min + max);
}
}
}
}
我得到的所有输出都是:
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
为什么它甚至多次打印0?
答案 0 :(得分:1)
你永远不会改变最小或最大。在你的循环中你改变了数组。当你设置w [i] = max时,你将项目放在第i位= 0(这是你初始化的最小值和最大值。)
将订单更改为
max=w[i]
或
min=w[i]
至于为什么多次打印,你的for循环中有print语句,将print语句移到for循环之外
我还会将print语句更改为
System.out.println("Max= " + max + "Min= " + min)
只是让结果更清晰