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

我想比较HashMap [duplicate]中的整数

有宏邈
2023-03-14

我想比较整数“eta”,但是当我使用比较器执行此操作时,发生错误“无法在基元类型int上调用rectrto(Persona)”,如果没有比较器,我该怎么做?

public class List(){
  HashMap<Persona, Biglietto> map;

}

public abstract class Persona {
    String cognome;
    int eta;   //i want to create a list of this integer
    String citta;
}

public class Biglietto {
    private double prezzo;
    private String localDate;
}

public class CompLastName implements Comparator<Map.Entry<Biglietto,Persona>>{

    @Override
    public int compare(Entry<Biglietto, Persona> o1, Entry<Biglietto, Persona> o2) {
        // TODO Auto-generated method stub
        Persona p1 = o1.getValue();
        Persona p2 = o2.getValue();

        return p1.getEta().compareTo(p2.getEta());
    }
}

共有1个答案

殳经略
2023-03-14

< code>int是基元类型,不能使用< code>compareTo()方法。您可以使用:

return Integer.compare(p1.getEta(), p2.getEta());
 类似资料:
  • 问题内容: 在Java中整数比较是棘手的,因为和表现不同。我明白了。 但是,如本示例程序所示, (第4行)的 行为不同于 (第3行) 。为什么是这样?? 结果 问题答案: 从JLS 如果装箱的值p为true,false,字节或\ u0000到\ u007f范围内的char或-128到127(含)之间的整数或短数,则令r1和r2为p的任何两次拳击转换。r1 == r2总是这样。 理想情况下,将给定的

  • 嗨,我需要打印我的最高工资的人的方法。我有女巫雇员和女巫学生名单。当学生的平均成绩在4.5分以上时,他可以得到500英镑的薪水。 我有这样方法: 这是Person类: 这是学生课堂: 我需要的方法为最好的支付的人和方法总和所有人的收入。

  • 我怎样才能比较这两个数组,以一种我想返回另一个数组的方式,它包含B中的所有a的值? 返回数组: 来自答案的C#代码:

  • 我正试图在Linux中实现这一点 我面临着几个问题: 处理浮点数 比较(使用$vs不使用) 计算绝对值 我不能一次解决我的问题并处理所有这些问题。我已经搜索了很多很多页面,有些解决方案不适合我。例如,我似乎没有腹肌功能。 任何帮助都将不胜感激。

  • 我正在做一个学校作业,我必须检查ArrayList teKoop中的某些对象是否不在ArrayList mijnGames中,问题是我一直设置这个错误代码:索引1 out of length 1 out of bounds for length 1 这里有什么明显的问题吗? 如有任何帮助,我们将不胜感激。 因此indexOutOfBound错误已修复,新问题出现:s 它一直返回给我一个空的Arra

  • 我了解到是作为双链表实现的,它在添加和删除上的性能比好,但在get和set方法上的性能更差。 这是否意味着我应该选择而不是来插入? 我写了一个小测试,发现插入速度更快,那么链表怎么比快呢? 请参考下面我所做的例子。