您的位置:首页 > 汽车 > 时评 > web浏览器怎么设置默认_保定网站建设服务平台_手机网站模板_视频网站推广

web浏览器怎么设置默认_保定网站建设服务平台_手机网站模板_视频网站推广

2024/10/22 9:57:10 来源:https://blog.csdn.net/zyyujq/article/details/143136827  浏览:    关键词:web浏览器怎么设置默认_保定网站建设服务平台_手机网站模板_视频网站推广
web浏览器怎么设置默认_保定网站建设服务平台_手机网站模板_视频网站推广

简述 C# 二维数据集合 List 的创建、遍历、修改、输出

  • 1、为什么要使用列表 List
  • 2、引入命名空间
  • 3、声明一维列表 List
  • 4、声明创建一个二维列表 List,数据类型 int
  • 5、 简单访问二维 List 元素或值
  • 6、遍历二维列表,控制台输出
  • 7、遍历二维列表,修改数据,控制台输出,采用 Join 输出行数据
  • 8、删除列表行,索引默认从零开始
  • 9、删除集合中一定范围内的元素,索引默认从零开始
  • 10、在列表索引前插入元素
  • 11、List的方法和属性、方法或属性作用

1、为什么要使用列表 List

  • 当我们有很多类型一样的数据时,可以使用数组来进行存储并管理,但是数组的缺点:C# 数组的大小必须提前给定的、是固定的,不像 VB 数组可以自由按量变化。 如果我们有许多数据类型一样,但数量不定的数据,当获取的数据数量超过数组定义,数组将发生数据溢出错误,这时候可以使用集合类来进行管理——例如列表 List。我们可以使用列表 List 很方便的添加数据,删除数据以及其他的一些数据操作,便于方便数据操作,List 操作比数组更加灵活。List 类是 ArrayList 类的泛型等效类,该类使用大小可按需动态增加的数组实现 IList 泛型接口。

  • 泛型的好处:它为使用 C# 语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。

  • 性能注意事项:在决定使用 IList 还是使用 ArrayList 类(两者具有类似的功能)时,记住 IList 类在大多数情况下执行得更好并且是类型安全的。如果对 IList 类的类型 T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型 T 使用值类型,则需要考虑实现和装箱问题。

2、引入命名空间

  using System; using System.Collections.Generic;

3、声明一维列表 List

 List<T> mList = new List<T>();  

T 为列表中元素类型,即数据类型。

4、声明创建一个二维列表 List,数据类型 int

            //声明新的二维列表 List:twoDimensionalListList<List<int>> twoDimensionalList = new List<List<int>>();// 初始化二维列表 List ,添加 3 行 4 列twoDimensionalList.Add(new List<int> { 1, 2, 3, 4 });//添加一维 List 元素twoDimensionalList.Add(new List<int> { 5, 6, 7, 8 });twoDimensionalList.Add(new List<int> { 9, 10, 11, 12 });

5、 简单访问二维 List 元素或值

注意:索引默认从零开始

 int element = twoDimensionalList[0][1]; // 获取第一行、第二列元素的值(行索引为 0,列索引为 1),值为 2Console.WriteLine(element);Console.WriteLine();      

A 输出:2

6、遍历二维列表,控制台输出

            // 获取二维列表行数int rowCount = twoDimensionalList.Count;// 获取二维列表列数int columnCount = twoDimensionalList.Count == 0 ? 0 : twoDimensionalList[0].Count;//遍历二维列表,控制台输出foreach (List<int> row in twoDimensionalList){foreach (int item in row){Console.Write(item + " ");//控制台调试显示数据}Console.WriteLine();}Console.WriteLine();

B 输出:
1 2 3 4
5 6 7 8
9 10 11 12

7、遍历二维列表,修改数据,控制台输出,采用 Join 输出行数据

            for (int i = 0; i < rowCount; i++){for (int j = 0; j < columnCount; j++){twoDimensionalList[i][j] += 1;//修改数据,二维数据每个数加 1}}//遍历二维列表,控制台输出,采用 Join 输出行数据foreach (var row in twoDimensionalList) { Console.WriteLine(string.Join(" ", row)); }

C 输出:
2 3 4 5 //索引为 0
6 7 8 9 //索引为 1
10 11 12 13 //索引为 2

8、删除列表行,索引默认从零开始

数据继 C 输出:

twoDimensionalList.RemoveAt(2);//删除索引 2 的行数据

输出:
2 3 4 5
6 7 8 9

9、删除集合中一定范围内的元素,索引默认从零开始

数据继 C 输出:

twoDimensionalList.RemoveRange(0, 2);//从索引 0 开始,删除 2 行数据

输出:
10 11 12 13

10、在列表索引前插入元素

数据继 C 输出:

 twoDimensionalList.Insert(1, new List<int> { 15, 16, 17, 18 });

输出:
2 3 4 5
15 16 17 18
6 7 8 9
10 11 12 13

11、List的方法和属性、方法或属性作用

List 的方法和属性在二维数组中同样可以操作,先从一维 List 数据处理开始学习吧 😁😁😁

  • Capacity 用于获取或设置 List 可容纳元素的数量。当数量超过容量时,这个值会自动增长。可以设置这个值以减少容量,也可以调用trin()方法来减少容量以适合实际的元素数目。
  • Count 属性,用于获取数组中当前元素数量
  • Item( ) 通过指定索引获取或设置元素。对于List类来说,它是一个索引器。
  • Add( ) 在List中添加一个对象的公有方法
  • AddRange( ) 公有方法,在List尾部添加实现了ICollection接口的多个元素
  • BinarySearch( ) 重载的公有方法,用于在排序的List内使用二分查找来定位指定元素.
  • Clear( ) 在List内移除所有元素
  • Contains( ) 测试一个元素是否在List内
  • CopyTo( ) 重载的公有方法,把一个List拷贝到一维数组内
  • Exists( ) 测试一个元素是否在List内
  • Find( ) 查找并返回List内的出现的第一个匹配元素
  • FindAll( ) 查找并返回List内的所有匹配元素
  • GetEnumerator( ) 重载的公有方法,返回一个用于迭代List的枚举器
  • Getrange( ) 拷贝指定范围的元素到新的List内
  • IndexOf( ) 重载的公有方法,查找并返回每一个匹配元素的索引
  • Insert( ) 在List内插入一个元素
  • InsertRange( ) 在List内插入一组元素
  • LastIndexOf( ) 重载的公有方法,,查找并返回最后一个匹配元素的索引
  • Remove( ) 移除与指定元素匹配的第一个元素
  • RemoveAt( ) 移除指定索引的元素
  • RemoveRange( ) 移除指定范围的元素
  • Reverse( ) 反转List内元素的顺序
  • Sort( ) 对List内的元素进行排序
  • ToArray( ) 把List内的元素拷贝到一个新的数组内
  • trimToSize( ) 将容量设置为List中元素的实际数目

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com