C 高階學習第三章LINQ

2021-08-09 17:07:35 字數 1783 閱讀 6298

using system.linq;

var res=from m in masterlist    from後面設定查詢的集合

where m.level>8 && m.menpai=="丐幫"     where後面跟上查詢的條件

select m;                                  表示m的結果集合返回

var res=masterlist.where(m=>m.level>8 && m.menpai=="丐幫")     引數是乙個返回值是bool,帶乙個相對應型別的引數的委託func,lambda表示式

var res=from m in masterlist     查詢大俠所學功夫的殺傷力大於95   聯合查詢是第乙個集合的全部分別對應另乙個集合的內容

from k in kongfulist

where m.kongfu==k.kongfu && k.power>95

select m;   (select new;)輸出所有對應的集合的內容

var res=masterlist.selectmany(m=>kongfulist,(m,k)=>new ).where(x=>x.master.kongfu==x.kongfu.name && x.kongfu.power>95)

var res=from m in masterlist

where(m.level>8 && m.menpai=="menpai")

orderby m.level,m.age      按照多個字段進行排序,如果欄位的屬性相當,就按照第二屬性排序(從小到大,後面加上descending從大到小)

select m;

擴充套件方法排序:

var res=masterlist.where(m=>m.level>8 && m.menpai=="丐幫").orderby(m=>m.age) 以m.age排序

var res=masterlist.where(m=>m.level>8 && m.menpai=="丐幫").orderby(m=>m.age).thenby(m=>m.level);先以m.age排序,在age相同的情況下,在以level排序

var res=from m in masterlist

join k in kongfulist on m.kongfu equals k.name     join後面加聯合的集合,on後面加條件

where m.level>8

select new;

var res=from k in kongfulist

join m in masterlist on k.name equal m.kongfu   

into groups                                後面的集合按前面的集合分組,必須符合多對一關係

orferby groups.count()

select new ;

var res=from m in masterlist

group m by m.menpai              在m集合中,以門派分組

into g                                        這一組就是g

select new     g.key代表以哪個屬性分的組

bool res=masterlist.any(m=>m.menpai=="丐幫");  判斷這個集合中有沒有門派屬於丐幫的,有則返回true

bool res=masterlist.all(m=>m.menpai=="丐幫"); 判斷這個集合中門派是否都是屬於丐幫,是則返回true

學習C 第三章

經過網上發現和自己總結,最終把 改為 include using namespace std int main 我的同學用的是另外乙個編譯器,而我用的是vs,他根據原文打沒有出現報錯,關於隱式型別轉換貌似很少用到,這其實類似於隱式型別轉換不太支援然後轉化為指標了。具體解決方式就是 把 char a ...

第三章 高階特性

當要取list,tuple和str的某個元素到某個元素,除了逐個列出以外,還可以用切片 slice 來完成.使用方法 名字 起始index 結束index l michael sarah tracy bob jack l 0 3 michael sarah tracy 表示從起始索引開始,逐個取值,...

c 寶典 第三章 學習

1 c 禁止使用未賦值的變數,系統會給出預設值,變數的預設值大多是0,布林值為false.給變數賦值 myvariable 123 或者 int myvariable 123 注意 變數的 單詞首字母 大寫,每個節自建都有空格,最後分號結束。2 陣列,array 是一些相鄰的記憶體位元組,可以使用索...