Java中容器的contains函式與自定義類

2021-08-17 11:39:54 字數 628 閱讀 6434

一句話部落格

自定義類的容器的contains函式需要過載equals函式,格式需要@override和equals的引數列表中應該是object類的。

具體分析過程

在完成mit實驗作業的時候,add函式需要遍歷list 找尋相同的物件。

對vertex類的equals函式定義如下:

// methods

public

boolean

equals(vertex that)

在新增add函式的時候,需要,判斷是否已經存在。

然而在呼叫contains函式的時候,junit檢測add函式出錯。最後確定是contains函式判斷的問題。

然後放棄contains,遍歷整個list,進行逐個的equals的檢查,才通過了測試。

埋下了這個坑,所以寫這個部落格為了填坑。。。

然後contains函式終於好使了!相同的indexof函式也好使了,趕緊回去修改所有的遍歷。。**變得更精簡!

詳述ArrayList類中contains方法

原始碼 contains public boolean contains object o indexof public int indexof object o else return 1 string型別 arraylistnames new arraylist names.add aa sys...

詳述ArryList類中是contains方法

詳述arrylist類中是contains方法 原始碼public boolean contains object o public int indexof object o else return 1 string 型別 arraylistlist new arraylist list.add j...

java 中模擬容器(二)

package com.iteritor public inte ce iteratorcollection介面 package com.iteritor public inte ce collection接著我們在arraylist中實現遍歷,在這兒我們在arraylist中新加入乙個內部類arr...