在查詢表示式中,儲存子表示式的結果有時很有幫助,可在後續子句中使用。 可以通過let
關鍵字執行此操作,該關鍵字建立乙個新的範圍變數並通過提供的表示式結果初始化該變數。 使用值進行初始化後,範圍變數不能用於儲存另乙個值。 但是,如果範圍變數持有可查詢型別,則可以查詢該變數。
以兩種方式使用以下示例let
:
建立乙個可以查詢其自身的可列舉型別。
使查詢僅呼叫一次範圍變數word
上的tolower
。 如果不使用let
,則不得不呼叫where
子句中的每個謂詞的tolower
。
c#複製
class letsample1
; // split the sentence into an array of words
// and select those whose first letter is a vowel.
var earlybirdquery =
from sentence in strings
let words = sentence.split(' ')
from word in words
let w = word.tolower()
where w[0] == 'a' || w[0] == 'e'
|| w[0] == 'i' || w[0] == 'o'
|| w[0] == 'u'
select word;
// execute the query.
foreach (var v in earlybirdquery)
\" starts with a vowel", v);
}// keep the console window open in debug mode.
console.writeline("press any key to exit.");
console.readkey();
}}/* output:
"a" starts with a vowel
"is" starts with a vowel
"a" starts with a vowel
"earned." starts with a vowel
"early" starts with a vowel
"is" starts with a vowel
*/
abstract 修飾符指示所修飾的內容缺少實現或未完全實現,可用於類、方法、屬性、索引器和事件。一般沒有加abstract修飾的即預設為virtual。
一、abstract修飾的類叫抽象類,抽象類中的內容因缺少實現或未完全實現,因此不能生成物件例項,只能用於其他類的基類或做為物件變數宣告的型別,且抽象類中的成員則必須通過由該抽象類派生的類來實現,即通過子類繼承並覆蓋抽象類中的抽象方法。
抽象類的特性:
abstract class shapesclass
1、抽象類不能例項化。
2、抽象類可以包含抽象方法和抽象訪問器。
3、不能用 sealed(c# 參考)修飾符修改抽象類,這意味著抽象類不能被繼承。
4、從抽象類派生的非抽象類必須包括繼承的所有抽象方法和抽象訪問器的實實現。
二、abstract修飾的方法即抽象方法。
public abstract void mymethod();
抽象方法的特性:
1、抽象方法是隱式的虛方法。
2、只允許在抽象類中使用抽象方法宣告。
3、因為抽象方法宣告不提供實際的實現,所以沒有方法體;方法宣告只是以乙個分號結束,並且在簽名後沒有大括號 ()。
4、實現由乙個重寫方法提供,此重寫方法是非抽象類的成員。
5、在抽象方法宣告中使用 static 或 virtual 修飾符是錯誤的。
三、abstract修飾的屬性即抽象屬性。
抽象屬性的特性:
1、在靜態屬性上使用 abstract 修飾符是錯誤的。
2、在派生類中,通過包括使用 override 修飾符的屬性宣告,可以重寫抽象的繼承屬性。
學習日記 Day1
for 迴圈變數型別 迴圈變數名稱 要被遍歷的物件 迴圈體 int c for int a c 廣播的動態註冊 過程總結 1.定義乙個intentfiler和乙個繼承broadcastreceiver的內部類 receiver 2.在oncreate中例項1中的2個定義。intentfiler新增個...
數模日記 day1
上午聽了個國防科大的吳孟達教授的講座,內容關於美賽,筆記大致如下。關於比賽內容還是有一些新的想法和認識,比如他提了乙個觀點 不怕做不到,只怕想不到 來總結他評閱比賽 的感受,乍一聽讓我有點想挑刺。因為現在手上這題還沒有乙個問題被解決,讓我有種既想不到,也做不到的乏力感。不過關於美國和中國兩國 的對比...
Python學習日記 函式 day1
python中定義函式用關鍵字def,例如 def test print hello world test hello world 函式也可以帶引數,多個引數用逗號隔開,例如 a,b為形參,test 1,5 具體傳入引數1,5 為實參 def test a,b print a b 前提是同型別才能相...