需求:1.將自定義物件作為元素存到arraylist集合中,並去除重複元素
* 比如存人的物件,同姓名同年齡,視為同乙個人,為重複元素
* * 思路:1.對人建立乙個類,將資料封裝進建立的人物件裡
* 2.定義容器,存入容器裡
* 3.遍歷,查重,取出
* * list 集合判斷元素是否相同contains,用equals
* 而預設下equals是比較位址的(string類經過複寫,所以比較的是字串的內容),
* 所以需要複寫quals來實現。
object類equals方法的源**如下:
public boolean equals(object obj)
arraylist類contains方法的源**如下:
public boolean contains(object o)
public int indexof(object o) else
return -1;
}
實現**如下:
class person
public string getname()
public int getage()
//複寫了object的equals方法
ArrayList去除重複資料
arraylist元素去重是我們經常使用的功能,最容易想到的就是雙層for迴圈去重,這裡列舉出其他的兩種方式,如下 使用list的contains方法實現,如下 list list newarraylist list.add 序號 99990aa1 不符合規範 list.add 序號 99990aa...
Q A stl容器去除重複的元素
經常會有這種情況,例如有幾個不同 的詞表,先後放入到乙個容器中 如vector中 要求去除容器中重複的詞條。通常就是兩步 1.排序 2.去除相鄰的重複節點。對於2,我從前都是用文字編輯器 ultraedit 去重,沒有用程式做過。現在寫了下,主要是理解unique函式。關鍵 如下 1.sort th...
去除ArrayList容器中的相同的物件元素
boolean retainall collection c 在網上查到了 retainall方法 然後就在 中新增 listemployeeofintermediarys new arraylist listtemplist new arraylist if templist null emplo...