HashSetにデータを挿入するプログラムを作成しました...コードは次のとおりです
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;
}
}
私は他の2つのクラスを貼り付けていません。これらのクラスで行っているのは、データを入力することだけで、もう1つはメインクラスです。
Java Doc Apiを介して、Collectionsクラスにsort()というメソッドがあることを知りました。今、私が抱えている問題は、ソート方法がリストを取ることです。
ここにドキュメントソート(リストリスト)からの署名があります。ハッシュセットをソートする問題に直面しています。誰かが HashSet を TreeSet に変換するように言いました (スレッドの 1 つでスタックオーバーフローも言及されています)...これが唯一の方法ですか?