-1

重複の可能性:
Java ArrayList 重複を削除

次のクラスとリストから、名前と日付が同じで他が削除されるリストが必要です。

以下のリストから、最初の 2 つのレコードのみが必要です。名前と日付が同じであるため、3 番目のレコードを削除する必要があります。

public class TestBean {

    public String name;
    public Date birthDate;
    public String city;
}


List<TestBean> list = new ArrayList<TestBean>();

TestBean testBean=new TestBean();
testBean.setName("test");
testBean.setBirthDate(new SimpleDateFormat("mm/dd/yyyy").parse("01/01/1981"));
testBean.setCity("chicago");

TestBean testBean1=new TestBean();
testBean.setName("test");
testBean.setBirthDate(new SimpleDateFormat("mm/dd/yyyy").parse("01/01/1981"));
testBean.setCity("newyork");

TestBean testBean2=new TestBean();

testBean.setName("test");
testBean.setBirthDate(new SimpleDateFormat("mm/dd/yyyy").parse("01/01/1982"));
testBean.setCity("chicago");
list.add(testBean);
list.add(testBean1);
list.add(testBean2);
4

1 に答える 1

2

TestBean クラスの equals() (名前と生年月日に基づく) と hashCode() をオーバーライドし、すべてのオブジェクトをSetデータ構造に追加します。equals() が正しくオーバーライドされている場合は、重複オブジェクトにフィルターを設定します。

于 2013-01-09T04:31:36.707 に答える