【发布时间】:2019-01-04 02:10:17
【问题描述】:
在这个程序中,我希望能够从数组中删除最小值和最大值,但我不知道该怎么做。
public class Average
{
public static void main (String [ ] args)
{
double [] weights = {39.5, 34.8, 22.6, 38.7, 25.4, 30.1, 41.8, 33.6, 26.2, 27.3};
double minimum = Integer.MAX_VALUE;
double maximum = Integer.MIN_VALUE;
for(int i = 0; i < weights.length; i++){
if(minimum > weights [i])
minimum = weights[i];
}
for(int i = 0; i < weights.length; i++){
if(maximum < weights [i])
maximum = weights[i];
}
}
}
【问题讨论】:
-
复制到一个新的新数组?不包括 min 和 max 元素?如果这些元素出现两次或多次会怎样?
-
您不能真正删除或添加到数组。您最好将所有内容存储在列表中。 ArrayList 在这里可以很好地工作。运行与上面相同的循环以查找最大和最小数字,将它们存储在变量中,然后执行 ArrayList.remove(maximum); ArrayList.remove(最小);
-
无论是谁对问题和/或答案投了反对票,请解释一下您为什么这样做?我希望你知道你会因为投反对票而失去声誉点数..