当前位置: 首页 > 面试题库 >

Java-从对象的数组列表中获取最大值?

梁丘成和
2023-03-14
问题内容

是否有一种简单的方法可以从对象数组列表中的一个对象的字段中获取最大值?

例如,出于下面的对象,我希望获得“值”字段的最高值。

我想从中获取ValuePairs.mValue的最大值的示例arraylist。

ArrayList<ValuePairs> ourValues = new ArrayList<>();
outValues.add(new ValuePairs("descr1", 20.00));
outValues.add(new ValuePairs("descr2", 40.00));
outValues.add(new ValuePairs("descr3", 50.00));

创建存储在arraylist中的对象的类:

public class ValuePairs {

    public String mDescr;
    public double mValue;

    public ValuePairs(String strDescr, double dValue) {

        this.mDescr = strDescr;
        this.mValue = dValue;

    }

}

我正在通过做类似的事情来获取mValue的最大值(我知道这是不正确的):

double dMax = Collections.max(ourValues.dValue);

dMax应该为50.00。

任何帮助表示赞赏。谢谢!


问题答案:

使用Comparatorwith
Collections.max()告知它哪个比较大。



 类似资料:
  • 问题内容: 我有一类称为具有可变的。 我想退出具有最大变量的。 我知道可以通过编写一个自定义比较器并使用来完成此操作,但是我想知道在Java 8中是否可以通过使用自定义比较器来完成此操作,因为我只想使用一个最长日期仅出现在我的代码中的某个位置,并且该类不应始终使用变量来比较实例。 问题答案: 并且Contact类不应该总是使用lastUpdated变量来比较实例 因此,每当要按实例的属性比较多个实

  • 问题内容: 因此,我有一个包含几个列表的列表,这些列表都首先包含三个字符串,然后是一个浮点数,例如: 如何制作一个返回最大值的函数(此处为9.1931)?我试过了 但这只是给我一个清单。 编辑:此外,以任何方式我可以获取值来自何处的索引?喜欢,来自哪个子列表? 问题答案: 循环浏览外部列表,然后选择每个子列表的最后一个元素: 最好将所有与函数相关的变量保留在范围内(将列表作为参数传递,并且不要通过

  • 我有这样的课: 和类似的列表,其中填充了元素。 如何使用Java8获得的最小值和最大值?

  • 我必须得到包含最大值的对象列表。Java8中的比较器max只返回一个对象。 为了做到这一点,我必须流式地显示两次列表: 这个解决方案有效。我想有一个更好的方法来解决这个问题,但我想不出来。

  • 我是Java和Stack Overflow的新手,我有一个关于排列的问题。 方法:我使用中的对象生成。每个的大小从(可能最小为1)到,并包含具有唯一名称属性的自定义生成对象。 问题:现在我的问题是如何在我的外部(y轴)中获得从第一个到最后一个的所有可能对象组合的排列(我想我们可以说这是x轴)? 我试着举一个简单的例子: : 1.1|1.2|1.3 : 2.1 : 3.1|3.2 这里,这些位于外部