集合类 列表List
当我们有很多类型一样的数据时,可以使用数组来进行存储并管理,但是这样的缺点是数组的大小是提前给定的、是固定的。
如果我们有许多类型一样但数量不定的数据,我们可以使用集合类来进行管理——例如列表List。我们可以使用列表List很方便的添加数据,删除数据以及其他的一些数据操作。
创建方法1:
List<int> scoreList = new List<int>();//创建了一个空列表
1
创建方法2:
var scoreList = new List<int>();//创建了一个空列表
1
初始化的创建:
var scoreList = new List<int> {1,2,3};
1
向列表中插入数据:
scoreList.Add(4);
1
列表中的数据也是有索引值的,可以直接根据索引返回数据。
关于列表的其他知识
列表内部数据其实是使用数组进行存储的。一个空的列表内部会有一个长度为0的数组。当对列表中添加元素时,列表的容量会扩大到4,如果添加第五个元素时,列表的大小就会重新扩大到8,以此类推。一次2倍的形式增加。
当列表的容量发生改变时,它会创建一个新的数组,使用Array.Copy()方法将就数组中的元素复制到新数组中。为了节省时间,如果事先知道所要存储的元素的个数,就可以利用列表的构造函数指定列表的容量大小,例如:
List<int> intList = new List<int> (10);
//创建了一个容量为10的列表
//当容量不够时,每次都会按照原来的2倍进行容量的扩充
1
2
3
我们可以通过Capacity属性来获取和设置容量大小。
intList.Capacity = 100;
1
注意容量和列表中的元素个数的区别。
容量是列表中用于存储数据的数组的长度,通过Capacity进行获取。
而列表中的严肃则是我们添加进去的、需要管理的数据,通过Count进行获取。
列表的遍历
两种遍历方式
for循环
遍历所有的索引,通过索引访问列表中的元素
for(int i = 0; i < list.Count; i++)
{
//循环体list[i]
}
1
2
3
4
foreach循环
依次获得list中的每一个元素,赋值给temp,并执行循环体
foreach(int temp in list)
{
//循环体temp
}
---------------------
作者:WhiteJunior
来源:CSDN
原文:https://blog.csdn.net/lym940928/article/details/79952286
版权声明:本文为博主原创文章,转载请附上博文链接!