|
| 1 | +/** |
| 2 | + * File: list.cs |
| 3 | + * Created Time: 2022-12-23 |
| 4 | + * Author: haptear ([email protected]) |
| 5 | + */ |
| 6 | + |
| 7 | +using NUnit.Framework; |
| 8 | + |
| 9 | +namespace hello_algo.chapter_array_and_linkedlist |
| 10 | +{ |
| 11 | + public class list |
| 12 | + { |
| 13 | + [Test] |
| 14 | + public void Test() |
| 15 | + { |
| 16 | + |
| 17 | + /* 初始化列表 */ |
| 18 | + // 注意数组的元素类型是 int[] 的包装类 int[] |
| 19 | + int[] numbers = new int[] { 1, 3, 2, 5, 4 }; |
| 20 | + List<int> list = numbers.ToList(); |
| 21 | + Console.WriteLine("列表 list = " + string.Join(",",list)); |
| 22 | + |
| 23 | + /* 访问元素 */ |
| 24 | + int num = list[1]; |
| 25 | + Console.WriteLine("访问索引 1 处的元素,得到 num = " + num); |
| 26 | + |
| 27 | + /* 更新元素 */ |
| 28 | + list[1] = 0; |
| 29 | + Console.WriteLine("将索引 1 处的元素更新为 0 ,得到 list = " + string.Join(",", list)); |
| 30 | + |
| 31 | + /* 清空列表 */ |
| 32 | + list.Clear(); |
| 33 | + Console.WriteLine("清空列表后 list = " + string.Join(",", list)); |
| 34 | + |
| 35 | + /* 尾部添加元素 */ |
| 36 | + list.Add(1); |
| 37 | + list.Add(3); |
| 38 | + list.Add(2); |
| 39 | + list.Add(5); |
| 40 | + list.Add(4); |
| 41 | + Console.WriteLine("添加元素后 list = " + string.Join(",", list)); |
| 42 | + |
| 43 | + /* 中间插入元素 */ |
| 44 | + list.Insert(3, 6); |
| 45 | + Console.WriteLine("在索引 3 处插入数字 6 ,得到 list = " + string.Join(",", list)); |
| 46 | + |
| 47 | + /* 删除元素 */ |
| 48 | + list.RemoveAt(3); |
| 49 | + Console.WriteLine("删除索引 3 处的元素,得到 list = " + string.Join(",", list)); |
| 50 | + |
| 51 | + /* 通过索引遍历列表 */ |
| 52 | + int count = 0; |
| 53 | + for (int i = 0; i < list.Count(); i++) |
| 54 | + { |
| 55 | + count++; |
| 56 | + } |
| 57 | + |
| 58 | + /* 直接遍历列表元素 */ |
| 59 | + count = 0; |
| 60 | + foreach (int n in list) |
| 61 | + { |
| 62 | + count++; |
| 63 | + } |
| 64 | + |
| 65 | + /* 拼接两个列表 */ |
| 66 | + List<int> list1 = new() { 6, 8, 7, 10, 9 }; |
| 67 | + list.AddRange(list1); |
| 68 | + Console.WriteLine("将列表 list1 拼接到 list 之后,得到 list = " + string.Join(",", list)); |
| 69 | + |
| 70 | + /* 排序列表 */ |
| 71 | + list.Sort(); // 排序后,列表元素从小到大排列 |
| 72 | + Console.WriteLine("排序列表后 list = " + string.Join(",", list)); |
| 73 | + } |
| 74 | + } |
| 75 | +} |
0 commit comments