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

溫馨提示×

溫馨提示×

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

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

C#數組操作舉例分析

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

這篇文章主要講解了“C#數組操作舉例分析”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#數組操作舉例分析”吧!

數組是相同類型的對象的集合。由于數組幾乎可以為任意長度,因此可以使用數組存儲數千乃至數百萬個對象,但必須在創建數組時就確定其大小。數組中的每項都按索引進行訪問,索引是一個數字,指示對象在數組中的存儲位置或槽。數組既可用于存儲 引用類型,也可用于存儲 值類型。

C#數組操作程序:

  1. using System;  

  2. using System.Collections.Generic;  

  3. using System.Text;  

  4.  

  5. namespace ClassAboutArray  

  6. {  

  7. public class CreateArray  

  8. {  

  9. /// <summary> 

  10. /// 一維數組的定義  

  11. /// </summary> 

  12. public void testArr1()  

  13. {  

  14. int[] myIntArr = new int[100];  

  15. //定義一個長度為100的int數組  

  16. string[] mystringArr = new string[100];  

  17. //定義一個長度為100的string數組  

  18. object[] myObjectArr = new object[100];  

  19. //定義一個長度為100的int數組  

  20.  

  21. int[] myIntArr2 = new int[] { 1, 2, 3 };   

  22. //定義一個int數組,長度為3  

  23. string[] mystringArr2 = new string[] { "油", "鹽" };  

  24. //定義一個string數組,長度為2  

  25. }  

  26.  

  27. /// <summary> 

  28. /// 多維數組的定義  

  29. /// </summary> 

  30. public void testArr2()  

  31. {  

  32. int[,] myIntArr = new int[10, 100];   

  33. //定義一個10*100的二維int數組  

  34. string[, ,] mystringArr = new string[2, 2, 3];   

  35. //定義一個2*2*3的三維string數組   

  36.  

  37. int[,] myIntArr2 = new int[,] { { 1, 2, 3 }, { -1, -2, -3 } };  

  38. //定義一個2*3的二維int數組,并初始化  

  39. string[,] mystringArr2 = new string[,] { { "油", "鹽" }, { "《圍城》", "《晨露》" } };  

  40. //定義一個2*2的二維string數組,并初始化  

  41. }  

  42.  

  43. /// <summary> 

  44. /// 交錯數組的定義  

  45. /// </summary> 

  46. public void testArr3()  

  47. {  

  48. int[][] myJaggedArray = new int[3][];  

  49. myJaggedArray[0] = new int[5];  

  50. myJaggedArray[1] = new int[4];  

  51. myJaggedArray[2] = new int[2];  

  52.  

  53. int[][] myJaggedArray2 = new int[][]  

  54.  {  

  55. new int[] {1,3,5,7,9},  

  56. new int[] {0,2,4,6},  

  57. new int[] {11,22}  

  58.  };  

  59. }  

  60. }  

  61.  

  62. public class TraverseArray  

  63. {  

  64. /// <summary> 

  65. /// 使用GetLowerBound|GetUpperBound遍歷數組  

  66. /// </summary> 

  67. public void test1()  

  68. {  

  69. //定義二維數組  

  70. string[,] myStrArr2 = new string[,] 
    { { "油", "鹽" }, { "《圍城》", "《晨露》" }, { "毛毛熊", "Snoopy" } };  

  71. //循環輸出  

  72. for (int i = myStrArr2.GetLowerBound(0); i <= myStrArr2.GetUpperBound(0); i++)  

  73. {  

  74. Console.WriteLine("item{0}", i);  

  75. for (int j = myStrArr2.GetLowerBound(1); j <= myStrArr2.GetUpperBound(1); j++)  

  76. {  

  77. Console.WriteLine(" item{0}{1}:{2}", i, j, myStrArr2.GetValue(i, j));  

  78. }  

  79. }  

  80. }  

  81.  

  82. /// <summary> 

  83. /// 使用foreach遍歷數組  

  84. /// </summary> 

  85. public void test2()  

  86. {  

  87. //定義二維數組  

  88. string[,] myStrArr2 = new string[,] 
    { { "油", "鹽" }, { "《圍城》", "《晨露》" }, { "毛毛熊", "Snoopy" } };  

  89. //循環輸出  

  90. foreach (string item in myStrArr2)  

  91. {  

  92. {  

  93. Console.WriteLine("{0}", item);  

  94. }  

  95. }  

  96. }  

  97. }  

  98.  

  99. public class SortArray  

  100. {  

  101. /// <summary> 

  102. /// 利用Sort方法進行數組排序  

  103. /// </summary> 

  104. public void test1()  

  105. {  

  106. //定義數組  

  107. int[] myArr = { 5, 4, 3, 2, 1 };  

  108.  

  109. //輸出原始數組:原始數組:5->4->3->2->1-> 

  110. Console.WriteLine("原始數組:");  

  111. for (int i = 0; i < myArr.Length; i++)  

  112. Console.Write("{0}->", myArr[i]);  

  113. Console.WriteLine();  

  114.  

  115. //對數組排序  

  116. Array.Sort(myArr);  

  117.  

  118. //并輸出排序后的數組:1->2->3->4->5-> 

  119. Console.WriteLine("排序以后數組:");  

  120. for (int i = 0; i < myArr.Length; i++)  

  121. Console.Write("{0}->", myArr[i]);  

  122. }  

  123.  

  124. /// <summary> 

  125. /// 多個數組的關鍵字排序  

  126. /// </summary> 

  127. public void test2()  

  128. {  

  129. //定義數組  

  130. int[] arrSid = { 5, 4, 3, 2, 1 };  

  131. string[] arrSname = { "張三", "李四", "王五", "麻子", "淘氣" };  

  132.  

  133. //輸出原始數組:原始數組:張三(5)->李四(4)->王五(3)->麻子(2)->淘氣(1)-> 

  134. Console.WriteLine("原始數組:");  

  135. for (int i = 0; i < arrSid.Length; i++)  

  136. Console.Write("{0}({1})->", arrSname[i], arrSid[i]);  

  137. Console.WriteLine();  

  138.  

  139. //根據學號關鍵字排序  

  140. Array.Sort(arrSid, arrSname);  

  141.  

  142. //并輸出排序后的數組:淘氣(1)->麻子(2)->王五(3)->李四(4)->張三(5)  

  143. Console.WriteLine("排序以后數組:");  

  144. for (int i = 0; i < arrSid.Length; i++)  

  145. Console.Write("{0}({1})->", arrSname[i], arrSid[i]);  

  146. }  

  147. }  

  148.  

  149. public class SearchArray  

  150. {  

  151. /// <summary> 

  152. /// 利用BinarySearch方法搜索元素  

  153. /// </summary> 

  154. public void test1()  

  155. {  

  156. //定義數組  

  157. int[] myArr = { 5, 4, 3, 2, 1 };  

  158.  

  159. //對數組排序  

  160. Array.Sort(myArr);  

  161.  

  162. //搜索  

  163. int target = 3;  

  164. int result = Array.BinarySearch(myArr, target); //2  

  165. Console.WriteLine("{0}的下標為{1}", target, result); //2  

  166. }  

  167.  

  168. /// <summary> 

  169. /// 判斷是否包含某個值  

  170. /// </summary> 

  171. public void test2()  

  172. {  

  173. //定義數組  

  174. string[] arrSname = { "張三", "李四", "王五", "麻子", "淘氣" };  

  175.  

  176. //判斷是否含有某值  

  177. string target = "王五";  

  178. bool result = ((System.Collections.IList)arrSname).Contains(target);  

  179. Console.WriteLine("包含{0}?{1}", target, result); //true  

  180. }  

  181. }  

  182.  

  183. public class ReverseArray  

  184. {  

  185. /// <summary> 

  186. /// 利用Reverse方法反轉數組  

  187. /// </summary> 

  188. public void test1()  

  189. {  

  190. //定義數組  

  191. int[] myArr = { 5, 4, 3, 2, 1 };  

  192.  

  193. //輸出原始數組:原始數組:5->4->3->2->1-> 

  194. Console.WriteLine("原始數組:");  

  195. for (int i = 0; i < myArr.Length; i++)  

  196. Console.Write("{0}->", myArr[i]);  

  197. Console.WriteLine();  

  198.  

  199. //對數組反轉  

  200. Array.Reverse(myArr);  

  201.  

  202. //并輸出反轉后的數組:1->2->3->4->5-> 

  203. Console.WriteLine("反轉以后數組:");  

  204. for (int i = 0; i < myArr.Length; i++)  

  205. Console.Write("{0}->", myArr[i]);  

  206. }  

  207. }  

  208.  

  209. public class CopyArray  

  210. {  

  211. /// <summary> 

  212. /// 利用Copy靜態方法復制數組  

  213. /// </summary> 

  214. public void test1()  

  215. {  

  216. //定義數組  

  217. int[] myArr = { 5, 4, 3, 2, 1 };  

  218.  

  219. //輸出原始數組:原始數組:5->4->3->2->1-> 

  220. Console.WriteLine("原始數組:");  

  221. for (int i = 0; i < myArr.Length; i++)  

  222. Console.Write("{0}->", myArr[i]);  

  223. Console.WriteLine();  

  224.  

  225. //復制數組  

  226. int[] newnewArr = new int[3];  

  227. Array.Copy(myArr, newArr, 3);  

  228.  

  229. //并輸出反復制的數組:5->4->3-> 

  230. Console.WriteLine("復制數組:");  

  231. for (int i = 0; i < newArr.Length; i++)  

  232. Console.Write("{0}->", newArr[i]);  

  233. }  

  234.  

  235. /// <summary> 

  236. /// 利用CopyTo實例方法復制數組  

  237. /// </summary> 

  238. public void test2()  

  239. {  

  240. //定義數組  

  241. int[] myArr = { 5, 4, 3, 2, 1 };  

  242.  

  243. //輸出原始數組:原始數組:5->4->3->2->1-> 

  244. Console.WriteLine("原始數組:");  

  245. for (int i = 0; i < myArr.Length; i++)  

  246. Console.Write("{0}->", myArr[i]);  

  247. Console.WriteLine();  

  248.  

  249. //復制數組  

  250. int[] newnewArr = new int[7];  

  251. myArr.CopyTo(newArr, 2);  

  252.  

  253. //并輸出反復制的數組:0->0->5->4->3->2->1-> 

  254. Console.WriteLine("復制數組:");  

  255. for (int i = 0; i < newArr.Length; i++)  

  256. Console.Write("{0}->", newArr[i]);  

  257. }  

  258. }  

  259.  

  260. public class DynamicCreateArray  

  261. {  

  262. /// <summary> 

  263. /// 利用CreateInstance動態創建數組  

  264. /// </summary> 

  265. public void test1()  

  266. {  

  267. //定義長度數組  

  268. int[] lengthsArr = new int[] { 3, 4 };  

  269. int[] lowerBoundsArr = { 1, 11 };  

  270.  

  271. Array arr = Array.CreateInstance(Type.GetType("System.Int32"), lengthsArr, lowerBoundsArr);  

  272.  

  273. Random r = new Random(); //聲明一個隨機數對象  

  274. //循環賦值、輸出  

  275. for (int i = arr.GetLowerBound(0) - 1; i < arr.GetUpperBound(0) - 1; i++)  

  276. {  

  277. for (int j = arr.GetLowerBound(1) - 1; j < arr.GetUpperBound(1) - 1; j++)  

  278. {  

  279. arr.SetValue((int)r.Next() % 100, i, j);//用1~100的隨即數賦值  

  280. Console.WriteLine("arr[{0},{1}]={3}", i, j, arr.GetValue(i, j));  

  281. }  

  282. }  

  283. }  

  284. }  

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

向AI問一下細節

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

AI

屏南县| 潜江市| 芷江| 龙山县| 富宁县| 洮南市| 广安市| 长宁县| 凌云县| 吉安市| 惠安县| 景谷| 绩溪县| 河东区| 镇平县| 正镶白旗| 同仁县| 原阳县| 自贡市| 宝清县| 株洲县| 阳江市| 陵水| 镇沅| 禄劝| 武安市| 旌德县| 内黄县| 阳春市| 连平县| 五河县| 鸡东县| 土默特右旗| 乐亭县| 元阳县| 民勤县| 普定县| 梁平县| 怀远县| 青海省| 许昌市|