Sortierung HashSet

Ich habe ein Programm geschrieben zum einfügen von Daten in ein HashSet...hier ist der code

public class Person implements Comparable<Person>
{
    private int person_id;
    private String person_name;
    public Person(int person_id,String person_name)
    {
        this.person_id=person_id;
        this.person_name=person_name;
    }
    /* getter and setter method */
    public boolean equals(Object obj)
    {
        Person p=(Person)obj;
        if(!(p instanceof Person))
        {
            return false;
        }
        else if(this.person_id==p.person_id)
            return true;
        else
            return false;
    }
    @Override
    public int hashCode()
    {
        return person_id*6;
    }
    @Override
    public int compareTo(Person o)
    {
        if(this.person_id>o.person_id)
            return 1 ;
        else if(this.person_id<o.person_id)
            return -1;
        else return 0;
    }
}

Habe ich nicht eingefügt beiden anderen Klassen.Alles was ich Tue in diesen Klassen ist das Auffüllen der Daten und die andere ist die main-Klasse.

Jetzt verstehe ich, dass durch die Java-Doc-Api kam ich zu wissen, dass es Methode namens sort() im Collections-Klasse.Jetzt das Problem, das ich bin, ist, dass die Art mathod dauert in der Liste.

hier ist die Unterschrift vom doc sort(Liste, Liste). Ich bin vor problem zu Sortieren, meine hashset .Jemand sagte mir, zu konvertieren HashSet in TreeSet(Das ist auch schon in einem der stackoverflow-thread)...Ist das der einzige Weg

  • Warum nicht loswerden HashSet und verwenden nur TreeSet von Anfang an?
Schreibe einen Kommentar