当前位置: 首页 > 知识库问答 >
问题:

不允许比较两个对象[重复]

陆烨磊
2023-03-14

所以我正在寻找根据对象中的字段对对象的数组列表进行排序,但我收到一个错误“无法解析方法compareTo(int)”

            ArrayList<SuperHero> herolistClone = (ArrayList<SuperHero>) superheroList.clone();
            Collections.sort(herolistClone, new Comparator<SuperHero>() {
                @Override
                public int compare(SuperHero superHero, SuperHero superHeroTwo) {
                    return   superHero.getCiviliansSaved().compareTo(superHeroTwo.getCiviliansSaved());
                }
            });
        }

共有1个答案

孔正文
2023-03-14

我假设得到文明人保存()返回一个整数?int 不是对象,因此不能取消引用(“点”运算符不能应用于它们)。

试试< code > integer . compare(super hero . getciviliansaved()、super rotwo . getciviliansaved());

或者,用现代的,闪亮的新java替换所有这些:

英雄列表克隆排序(比较器比较Int(超级英雄::获得文明人保存));

嘣,可读性更强,把5条复杂的线变成了一条。

我预测你想反转排序(列出保存最多的英雄,在列表的0位置),在这种情况下,只需在最后一个之前的末尾打一个。反转());

 类似资料:
  • 在爪哇中。如果我们必须将一个对象与另一个对象进行比较。我们比较该对象中的每个字段。 学生 1 对象具有标记 1、标记 2、标记 3、名称、年龄作为字段。学生 2 对象具有标记 1、标记 2、标记 3、名称、年龄作为字段。因此,要检查2名学生是否相等...我们比较每个字段。 但是,如果 Student 对象有许多字段,该怎么办?学生1对象有标记1,标记2,标记3,名称,年龄,地址,颜色,类,国家,部

  • 但是,这两种方法都不返回真值。我已经检查了每个属性,它们都匹配。 如何比较这两个对象以验证它们是相同的?

  • 创建一个名为“Circle”的Java类来实现Java。io。可串行化接口,并基于半径对圆进行建模。半径不能小于零。实现radius的getter和setter方法。还包括在circle类中重写toString。创建类的比较器,用于比较Circle类型的两个对象。 这就是我目前所拥有的 这是我的比较器类 我的问题是我做得对还是不对?

  • 对于PostgreSQL(v9.5),JSONB格式提供了极好的机会。但现在我只能做一个相对简单的手术; 比较两个jsonb对象;查看一个文档与另一个文档相比有什么不同或缺失。 到目前为止我所拥有的 应该返回第1行与第2行的差异: 相反,它还返回重复项(

  • 使用RestAssured,我试图比较两个JSON对象。 示例:第一个JSON来自excel,我将其作为字符串读取并存储 第二个 JSON 是返回响应对象的响应,该响应对象实际上是一个 JSON 我想将这两者作为JSON对象进行比较,因为当我将响应转换为String并尝试进行比较时,如果JSON模式的顺序发生变化,我的断言就会失败。 我尝试了将字符串转换成JSON的方法,但是没有找到任何方法。有人

  • 这与Java比较两个列表的不同之处在于,我需要能够在jUnit中断言相等性,而不仅仅是比较列表。