三種去重的方法
1、list中的元素實現iequatabe介面,並提供equals方法和gethashcode方法。
2、使用表示式
[csharp]
view plain
copy
users.where((x,i)=>users.findindex(z=>z.name == x.name) == i)
user.where((x,i)=>users.findindex(z=>z.name==x.name)==i)去重,這條語句返回結果只保留users這個list中重複的元素的第乙個(name相等認為重複)。
3、使用迴圈,判斷每個元素是否重複
using
system;
using
system.collections.generic;
using
system.linq;
namespace
nonduplicatelist
} foreach
(listlist
innew
object)
//列印出三個list的元素
} console.read();
} }
class
user:iequatable
//繼承iequatable介面,實現equals方法。list就可以使用distinct去重
string
address;
public
user(
string
_name,
string
_address)
public
override
string
tostring()
,\taddress:"
, name, address);
} public
bool
equals(user other)
public
override
intgethashcode()
} }
陣列中去重
在js陣列中,我們都會遇到想要對陣列中重複的數進行檢測,例如將乙個陣列重複的數進行檢測並將其返回,剛開始我做出來如下 但是得出的結果是將遇到第乙個重複的數字全部列印出來,並沒有達到理想的效果,查詢資料後缺了最重要的東西,如indexof 如圖所示 newarr.indexof arr i 1,其中賦...
list集合去重問題
集合去掉重複元素 1 字串去重 public static void main string args for string s set 2 物件去重 package com.myproj.pojo public class people public void setname string nam...
mysql中去重 distinct 用法
在使用mysql時,有時需要查詢出某個欄位不重複的記錄,這時可以使用mysql提供的distinct這個關鍵字來過濾重複的記錄,但是實際中我們往往用distinct來返回不重複欄位的條數 count distinct id 其原因是distinct只能返回他的目標字段,而無法返回其他字段,例如有如下...