定義物件
public
class
data_item
public
int qty
}
定義集合
//資料來源list
private
static
list
a_list =
newlist()
;private
static
list
b_list =
newlist()
;//臨時list
private
static
list
merge_list =
newlist()
;private
static
list
atemp_list =
newlist()
;private
static
list
btemp_list =
newlist()
;
1、合併集合(兩不相同)
merge_list = a_list.
concat
(b_list)
.tolist()
;
2、合併集合並去除重複項(並集)
merge_list = a_list.
concat
(b_list.
where
(a =>
!a_list.
exists
(b => b.lot_id == a.lot_id && b.qty == a.qty)))
.tolist()
;
3、集合比對(找出各自不相同的 差集)
atemp_list = a_list.
where
(a =>
!b_list.
exists
(b => b.lot_id == a.lot_id && b.qty == a.qty)).
tolist()
;btemp_list = b_list.
where
(a =>
!a_list.
exists
(b => b.lot_id == a.lot_id && b.qty == a.qty)).
tolist()
;
4、集合共有的部分(交集)
merge_list = a_list.
where
(a => b_list.
exists
(b => b.lot_id == a.lot_id && b.qty == a.qty)).
tolist()
;
補:
list lista = new list();
list listb = new list();
list listresult = new list();
listresult = lista.distinct().tolist();//去重
listresult = lista.except(listb).tolist();//差集
listresult= lista.union(listb).tolist(); //並集
listresult = lista.intersect(listb).tolist();//交集
//lambda多條件查詢 where連線select
var num = removedata_list.tolist().max(p => convert.toint32(p.time_day));
list c_status = removedata_list.where(p => p.time_day == num.tostring()).tolist().select(p => p.status).tolist();
c.status = c_status[0];
string dn_no = rptdatas.select(o => o.dn_no).distinct().tolist().where(it => it != 「」).toarray();
add 20210807
擷取特定符號之前的資料
for
(int
i =0; i < tres_list.count; i++
)
日常用到,遂記錄,自用。 C 合併兩個(多個)集合
合併兩個集合 使用語言 c 環境 net core 2.0 當前使用 支援 net 所有環境,我就不多說了 核心 listlistmerge1 list1.union list2 tolist 不允許有重複項 listmerge1 結果 listlistmerge2 list1.concat lis...
兩個集合的差
題目出自杭電hdu 集合的差 以屬於a而不屬於b的元素為元素的集合稱為a與b的差集,即找出a中有的,而b中沒的。思路 1.對輸入的a,b集合進行集合內排序.2.a的元素a1依次與b中比a小的元素比較。3.若b中沒有元素與a1相等,則累加標記變數f,並把a1輸出.4.進行a1元素的下乙個元素a2與b中...
Java集合HashSet中的兩個物件怎樣算重複
集合hashset中物件的特點是無序 不允許重複。無序好理解,那麼兩個什麼樣的物件算重複呢?兩個物件重複意味著這兩個物件的內容相同 hashcode 值也相同。1 兩個物件a和b內容相同,表示a.equals b 的值為true。不重寫的話,預設equals 方法是呼叫 進行判斷的,判斷的是兩個物件...