91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#3.0中對象初始化器和集合初始化器怎么理解

發布時間:2021-12-01 09:53:32 來源:億速云 閱讀:150 作者:iii 欄目:編程語言

這篇文章主要講解了“C#3.0中對象初始化器和集合初始化器怎么理解”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#3.0中對象初始化器和集合初始化器怎么理解”吧!

關于對象初始化器(Object Initializers) 的一些問題:

問題一: 對象初始化器允許只給部分值賦值么?即不給其中一些值賦值

答案:允許;參考后面的代碼。

問題二:對象初始化器允許給internal 的成員賦值?(私有成員肯定不用想了,肯定不能賦值。)

答案:允許;參考下面的代碼。

public class Person  {  public string FirstName { get; set; }  public string LastName { get; set; }  public int Age { get; set; }  private int test01 = 25;  internal int test02;  }  class Program  {  static void Main(string[] args)  {  Person person = new Person { FirstName = "Scott", LastName = "Guthrie", test02 = 56, };  Console.WriteLine(person.test02);  Console.WriteLine(person.Age);  Console.ReadLine();  }  }

問題三:對象初始化器是否可以結合構造函數一起使用?

答案:可以參看如下代碼就可以正常使用:

var cookie3 = new System.Net.Cookie("MyCookie", "Jose") { Comment = "a cookie" };

我們在構造函數中給 Cookie 的名字和值賦了值,在初始化構造器中給 Comment 屬性賦了值。

問題四:構造函數賦值和初始化構造器賦值那個***被執行?

比如下述代碼,結果是那個呢??

static void Main(string[] args)  {  var cookie = new System.Net.Cookie("MyCookie", "Jose") { Name = "test02", Comment = "a cookie" };  Console.WriteLine(cookie.Name);  Console.ReadLine();  }

答案:

構造函數比初始化構造器更早被執行。

上述WriteLine 寫出來的信息為:test02

集合初始化器(Collection Initializers) 的一些問題:

問題一:集合初始化構造器中是否可以構造集合的一項為空值?

答案:可以,參看下述代碼。

問題二:集合初始化構造器是否可以初始化Hashtable ?

答案:可以。這時候相當于用了兩個對象初始化構造器,參看下面代碼:

public class Person  {  public string FirstName { get; set; }  public string LastName { get; set; }  public int Age { get; set; }  private int test01 = 25;  internal int test02;  }  class Program  {  static void Main(string[] args)  {  List<Person> people = new List<Person>{  new Person { FirstName = "Scott", LastName = "Guthrie", Age = 32 },  new Person { FirstName = "Bill", LastName = "Gates", test02 = 85},  new Person { FirstName = "Susanne", Age = 32 },  null,  };  Hashtable pp = new Hashtable {   { 1, new Person { FirstName = "Scott", LastName = "Guthrie", Age = 32 } },  { 2, new Person { FirstName = "Bill", LastName = "Gates", test02 = 85} },  { 3, new Person { FirstName = "Susanne", Age = 32 } },  { 4, null },  };  Console.ReadLine();  }  }

感謝各位的閱讀,以上就是“C#3.0中對象初始化器和集合初始化器怎么理解”的內容了,經過本文的學習后,相信大家對C#3.0中對象初始化器和集合初始化器怎么理解這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

手机| 鹤山市| 奉节县| 津市市| 河北区| 临汾市| 太湖县| 临安市| 浦江县| 中宁县| 桂林市| 胶州市| 永济市| 夏河县| 邵东县| 突泉县| 囊谦县| 阜新市| 白玉县| 图片| 偏关县| 江口县| 乌兰浩特市| 九寨沟县| 闻喜县| 县级市| 遂川县| 荔浦县| 武威市| 竹北市| 屏东市| 常州市| 五常市| 天祝| 庆城县| 盘锦市| 车致| 涟源市| 定襄县| 台中市| 峡江县|