List集合中的contains方法使用
阿新 • • 發佈:2019-02-08
由於list集合強大的功能,我們經常會使用list新增一些物件,但是在新增過程中可能會希望判斷一下將要新增的該物件是否已在list集合中,此時我們很容易就會想到contains該方法,這樣問題就會出現了
首先我們在利用該方法進行比較的時候有時明明一個物件沒有在集合中卻依舊判斷為ture,這裡不再分析原因只說解決方法:
一、重寫equals方法;如:
class YourObject{
private int m_value;
public boolean equals(Object obj){
YourObject your =(YourObject)obj;
if(this.m_value == your.m_value){
return true;
}
return false;
}
}
二、這種方法比較簡單,但是卻不是利用contains方法了;如:
M.BsCategoryInfo b = listcategory.Find(delegate(M.BsCategoryInfo bc) { return (bc.Id == category.Id); });
總之有時只要能達到預期的目的就行的;