一:**區域性變數(var)
public class userinfopublic string password
}class program
", i.tostring());
user.password = string.format("user", i.tostring());
users.add(user);
}foreach (var user in users)
console.readline();
}}
以前寫foreach的時候必須知道可列舉變數的具體型別
現在只要用乙個var就可以了
就像例子中:foreach (var user in users)一樣。
var可以用在很多情況下,比如using塊,如:
using (var file = new streamreader("c:\\a.txt"))
但是開發的過程中要注意以下幾點:
1:大量使用var關鍵字會造成程式**難於理解
2:宣告var變數的時候必須初始化,也不能把它初始化成null
3:不能在同一語句中初始化多個隱式型別的變數,
比如你可以這樣寫
int a = 1, b = 2;
但是不能這樣寫
var a = 1, b = 2;
二:物件初始化器
public class userinfopublic string password
}class program
;console.writeline(user.username);
console.writeline(user.password);
console.readkey();
}}
userinfo user = new userinfo ;
這是初始化物件的一種新方法,叫物件初始化器
三:匿名型別物件
匿名物件表面上是var關鍵字和物件初始化器結合的產物
static void main(string args);console.writeline(user.username);
console.writeline(user.password);
console.readkey();
}
編譯過程中,編譯器建立了乙個物件,這個物件包含了相應的字段,並為這些字段建立了屬性
陣列也是一種物件
建立匿名陣列
static void main(string args);//int number = new int ;
foreach (var i in number)
console.readkey();
}
匿名陣列內的元素必須保持型別一致,要不然編譯通不過
四:lambda表示式
lambda表示式其實就是一種匿名函式,只是寫法不同,如:
public delegate void lambdaeventhandler();class program
}
如果該匿名函式有引數,並且**塊中有多條語句。如下:
public delegate void lambdaeventhandler(object sender,eventargs e);class program
;lambda("sender",null);
console.readkey();
}}
原文出自:
Linq 預備知識(1)
一 區域性變數 var public class userinfo public string password class program i.tostring user.password string.format user i.tostring users.add user foreach v...
《C 自學入門》1 預備知識
c 是在c語言基礎之上開發的一種語言,是c語言的超集,取至c語言中的自加運算子,其意義不言而喻。學習c 是一次探索之旅,c 是一種令人興奮的語言,在二十世紀九十年代便是最重要的程式語言之一,並在二十一世紀仍然保持強勁的勢頭。c 既繼承了c語言高效,簡介,快速和可移植性的傳統,又為應對複雜程度不斷提高...
知識星球 預備知識
1.tenorflow 安裝 參考 tensorflow安裝教程 tensorflow 安裝教程 tensorflownews 2.tensrflow基礎 關注圖 會話 tensor 變數 feed和fetch。使用圖 graphs 來表示計算任務 在被稱之為會話 session 的上下文 cont...