小编Jas*_*per的帖子

Treeset.contains()问题

所以我现在一直在努力解决问题,我想在这里也可以寻求帮助.

我将Ticket对象添加到TreeSet,Ticket实现Comparable并重写了equals(),hashCode()和CompareTo()方法.我需要使用contains()检查对象是否已经在TreeSet中.现在在将2个元素添加到集合之后,它们全部检查得很好,但在添加第三个之后它会搞砸了.

在向TreeSet添加第三个元素后运行这一小段代码,Ticket temp2是我正在检查的对象(verkoopLijst).

    Ticket temp2 = new Ticket(boeking, TicketType.STANDAARD, 1,1);
    System.out.println(verkoop.getVerkoopLijst().first().hashCode());
    System.out.println(temp2.hashCode());

    System.out.println(verkoop.getVerkoopLijst().first().equals(temp2));
    System.out.println(verkoop.getVerkoopLijst().first().compareTo(temp2));
    System.out.println(verkoop.getVerkoopLijst().contains(temp2));
Run Code Online (Sandbox Code Playgroud)

返回:

22106622
22106622
true
0
false
Run Code Online (Sandbox Code Playgroud)

现在我的问题是这甚至可能如何?

编辑:

public class Ticket implements Comparable{

    private int rijNr, stoelNr;
    private TicketType ticketType;
    private Boeking boeking;


    public Ticket(Boeking boeking, TicketType ticketType, int rijNr, int stoelNr){    
        //setters
    }

    @Override
    public int hashCode(){
        return boeking.getBoekingDatum().hashCode();     
    }

    @Override
    @SuppressWarnings("EqualsWhichDoesntCheckParameterClass")    
    public boolean equals(Object o){
       Ticket t = (Ticket) o;

       if(this.boeking.equals(t.getBoeking())
               &&
          this.rijNr == t.getRijNr() &&  this.stoelNr == t.getStoelNr()
               &&
          this.ticketType.equals(t.getTicketType()))
       { …
Run Code Online (Sandbox Code Playgroud)

java contains treeset

10
推荐指数
1
解决办法
9991
查看次数

cxgrid表视图中的表头组

我需要根据Delphi中的查询为Tableview添加一个简单的样式.我需要它看起来像这样:

在此输入图像描述

我知道有一种按字段分组的方法,但我似乎无法弄清楚如何将2个主标题字段添加到表的标题中.

delphi devexpress tcxgrid

3
推荐指数
1
解决办法
4160
查看次数

标签 统计

contains ×1

delphi ×1

devexpress ×1

java ×1

tcxgrid ×1

treeset ×1