【问题标题】:How to remove the minimum and maximum value(only one min and only one max, not all of them) from an ArrayList<Double> in Java如何从 Java 中的 ArrayList<Double> 中删除最小值和最大值(只有一个最小值和一个最大值,而不是全部)
【发布时间】:2014-12-08 04:11:37
【问题描述】:

如何从 Java 中的 ArrayList 中删除最小值和最大值(只有一个最小值和一个最大值,而不是全部),然后将其放入另一个 ArrayList 中?

List<Double> arrayOfDoubles = new ArrayList<Double>();

【问题讨论】:

  • 编写一些代码,找到最低值并将其存储在某处,然后找到最高值并将其存储在某处。
  • (1) 在列表中找到最大值和最小值 (2) 删除它们。如果此解决方案的任何部分不清楚,请向我们询问(不要忘记包含您的代码尝试,以便我们解释您在哪里犯了错误)
  • 现在问题变了
  • 当你的变量包含Doubles 时,为什么它命名为arrayOfInts
  • 一个问题:这是家庭作业吗?我只是在问,因为如果是这样,我怀疑它的目的是教你如何创建自己的代码来使用循环。如果是这种情况,那么您很可能不会因使用 Collections 类中的方法而获得积分。

标签: java arraylist collections max min


【解决方案1】:

如何从 Java 中的 ArrayList 中删除最小值和最大值,然后将其放入另一个 ArrayList 中?

你可以使用Collections.min.max

Double min = Collections.min(arrayOfInts);
Double max = Collections.max(arrayOfInts);
arrayOfInts.remove(min);
if (min != max)
    arrayOfInts.remove(max);

List<Double> minMaxList = new ArrayList<>(Arrays.asList(min, max));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 2022-10-23
    • 2013-05-06
    • 2015-01-09
    • 2023-04-02
    相关资源
    最近更新 更多