C 獲取兩個集合的共同值,或者A中有,B中沒有

2021-10-04 21:53:03 字數 1600 閱讀 4615

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading;

using system.threading.tasks;

namespace sample3);

teacher1.

add(

newstudent()

);teacher1.

add(

newstudent()

);teacher1.

add(

newstudent()

);var teacher2=

newlist

(); teacher2.

add(

newstudent()

);teacher2.

add(

newstudent()

);//var exp1 = teacher1.where(a => teacher2.any(t => a.name.contains(t.name))).tolist();

//使用exists同樣可以實現 字面上應該更好理解,而且效率要高些

var exp1 = teacher1.

where

(a =

> teacher2.

exists

(t =

> a.name.

contains

(t.name)))

.tolist()

; console.

writeline

("--查詢student1和student2總同時存在的資料--");

foreach

(var item in exp1)

\t \t "

, item.name, item.subject);}

//var exp2 = teacher1.where(a => teacher2.all(t => !a.name.contains(t.name))).tolist();

//使用exists同樣可以實現 字面上應該更好理解,而且效率要高些

var exp2 = teacher1.

where

(a =

>

!teacher2.

exists

(t =

> a.name.

contains

(t.name)))

.tolist()

; console.

writeline

("--查詢student1集合中存在,而student2不存在的資料--");

foreach

(var item in exp2)

\t \t "

, item.name, item.subject);}

console.

read()

;}}public

class teacher

}

C 獲取兩個集合中相同的和不同的結果

有乙個需求,伺服器根據客戶端傳過來的乙個陣列,找到資料庫中不包含該陣列資料的所有資料。本來是想用兩個for迴圈比較的,然後覺得太臃腫,於是去萬能的google看了下,果然,有更簡潔的寫法。遂記錄之。static void main string args int b ienumerable en a...

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中...