中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

C#索引指示器怎么使用

發布時間:2021-12-02 11:08:59 來源:億速云 閱讀:111 作者:iii 欄目:編程語言

這篇文章主要講解了“C#索引指示器怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#索引指示器怎么使用”吧!

C#索引指示器并不難使用。它們的用法跟數組相同。在一個類內部,你可以按照你的意愿來管理一組數據的集合。這些對象可以是類成員的有限集合,也可以是另外一個數組,或者是一些復雜的數據結構。不考慮類的內部實現,其數據可以通過使用C#索引指示器來獲得。

實現C#索引指示器(indexer)的類可以象數組那樣使用其實例后的對象,但與數組不同的是C#索引指示器的參數類型不僅限于int。簡單來說,其本質就是一個含參數屬性:

  1. using System;  

  2. using System.Collections.Generic;  

  3. using System.Text;  

  4.    

  5. namespace Example08  

  6. {  

  7. public class Point  

  8. {  

  9. private double x, y;  

  10. public Point(double X, double Y)  

  11. {  

  12. x = X;  

  13. y = Y;  

  14. }  

  15. //重寫ToString方法方便輸出  

  16. public override string ToString()  

  17. {  

  18. return String.Format("X: {0} , Y: {1}", x, y);  

  19. }  

  20. }  

  21. public class Points  

  22. {  

  23. Point[] points;  

  24. public Points(Point[] Points)  

  25. {  

  26. points = Points;  

  27. }  

  28. public int PointNumber  

  29. {  

  30. get   

  31. {   

  32. return points.Length;   

  33. }  

  34. }  

  35. //實現索引訪問器  

  36. public Point this[int Index]  

  37. {  

  38. get  

  39. {  

  40. return points[Index];  

  41. }  

  42. }  

  43. }  

  44.    

  45. //感謝watson hua(http://huazhihao.cnblogs.com/)的指點  

  46. //索引指示器的實質是含參屬性,參數并不只限于int  

  47. class WeatherOfWeek  

  48. {  

  49. public string this[int Index]  

  50. {  

  51. get  

  52. {  

  53. //注意case段使用return直接返回所以不需要break  

  54. switch (Index)  

  55. {  

  56. case 0:  

  57. {  

  58. return "Today is cloudy!";  

  59. }  

  60. case 5:  

  61. {  

  62. return "Today is thundershower!";  

  63. }  

  64. default:  

  65. {  

  66. return "Today is fine!";  

  67. }  

  68. }  

  69. }  

  70. }  

  71. public string this[string Day]  

  72. {  

  73. get  

  74. {  

  75. string TodayWeather = null;  

  76. //switch的標準寫法  

  77. switch (Day)  

  78. {  

  79. case "Sunday":  

  80. {  

  81. TodayWeather = "Today is cloudy!";  

  82. break;  

  83. }  

  84. case "Friday":  

  85. {  

  86. TodayWeather = "Today is thundershower!";  

  87. break;  

  88. }  

  89. default:  

  90. {  

  91. TodayWeather = "Today is fine!";  

  92. break;  

  93. }  

  94. }  

  95. return TodayWeather;  

  96. }  

  97. }  

  98. }  

  99. class Program  

  100. {  

  101. static void Main(string[] args)  

  102. {  

  103. Point[] tmpPoints = new Point[10];  

  104. for (int i = 0; i < tmpPoints.Length; i++)  

  105. {  

  106. tmpPoints[i] = new Point(i, Math.Sin(i));  

  107. }  

  108. Points tmpObj = new Points(tmpPoints);  

  109. for (int i = 0; i < tmpObj.PointNumber; i++)  

  110. {  

  111. Console.WriteLine(tmpObj[i]);  

  112. }  

  113. string[] Week = new string[] 
    { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Staurday"};  

  114. WeatherOfWeek tmpWeatherOfWeek = new WeatherOfWeek();  

  115. for (int i = 0; i < 6; i++)  

  116. {  

  117. Console.WriteLine(tmpWeatherOfWeek[i]);  

  118. }  

  119. foreach (string tmpDay in Week)  

  120. {  

  121. Console.WriteLine(tmpWeatherOfWeek[tmpDay]);  

  122. }  

  123. Console.ReadLine();  

  124. }  

  125. }  

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

向AI問一下細節

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

AI

河南省| 鹿邑县| 教育| 昌图县| 洛川县| 文成县| 封丘县| 新营市| 凤庆县| 合川市| 静安区| 崇阳县| 姚安县| 富蕴县| 武宁县| 蕉岭县| 西林县| 当雄县| 游戏| 安平县| 正定县| 西盟| 平罗县| 普格县| 公安县| 当涂县| 天长市| 柳州市| 安新县| 桃江县| 绥棱县| 伊宁市| 永顺县| 阜康市| 密山市| 白玉县| 清河县| 双牌县| 聂拉木县| 刚察县| 左云县|