因為用到list,要去除重複資料,嘗試了幾種方法。記錄於此。。。
測試資料:
listli1 = new list;方法一:listli2 = new list;
listli3 = new list;
listli4 = new list;
hashseths = new hashset(li1); //此時已經去掉重複的資料儲存在hashset中方法二:
for (int i = 0; i < li2.count; i++) //外迴圈是迴圈的次數}}方法三:
//把相同的用null代替。方法四:for (int i = 0; i < li3.count; i++)}}
//這方法跟上面的一樣,只是變了邏輯最後輸出看結果for (int i = 0; i < li4.count - 1; i++)}}
}
console.writeline("li1去除重複後的值為");hs.tolist().foreach(item => console.writeline(item));
console.writeline("li2去除重複後的值為");
li2.foreach(item => console.writeline(item));
console.writeline("li3去除重複後的值為");
li3.foreach(item => console.writeline(item));
console.writeline("li4去除重複後的值為");
null我沒去掉。用的時候去掉即可。
當然。還有許多辦法。比如linq distinct 等等都可以,看看網上的這個例子:去掉modellist中title重複的內容,不區分大小寫
class program解決方案一:這裡比較的前提是物件的雜湊**相等。否則不會比較,因為雜湊**不相等。兩個物件顯然不相等,new model() ,
new model(),
new model() ,
new model()
};console.read();}}
public class model
public string title
}
//定義乙個類繼承iequalitycomparer介面呼叫:public class modelcomparer : iequalitycomparer
public int gethashcode(model obj)
}
modellist = modellist.distinct(new modelcomparer()).tolist();解決方案二:var title = modellist.groupby(m => m.title.tolower().trim()).select(m => new );當然。如果你僅僅比較兩個值是否相等。modellist = modellist.where(m => title.select(mo => mo.id).contains(m.id)).tolist();
foreach (var item in modellist)
listli1 = new list;li1 = li1.distinct().tolist();
python 去掉list中的重複元素
def f1 seq not order preserving set map set.setitem seq,return set.keys def f2 seq order preserving checked for e in seq if e not in checked return ch...
Go切片去掉重複元素
1.go切片去掉重複元素 如果傳入的是string型別 slice去重 func removerepbymap slc string string 存放返回的不重複切片 tempmap map string byte 存放不重複主鍵 for e range slc return result 如果傳...
java刪除list中重複元素的方法
刪除arraylist中重複元素 public static void removeduplicate list list system.out.println list 方法二 通過hashset剔除 刪除arraylist中重複元素 public static void removeduplic...