时间:2021-05-19
(列表可以存储任何类型的数据,在创建列表对象的时候首先要指定你要创建的这个列表要存储什么类型的)(泛型)
//创建列表 //方法一 List<int> intList = new List<int>();//创建了一个空的列表 通过类型后面的<>来表示这个列表存储的数据的类型 //方法二 var intlist1 = new List<string>(); //方法三 var intlist2 = new List<int>(){1,2,3};//创建了一个列表,里面的初始值有三个分别为 1 2 3for循环,遍历所有的索引,通过索引访问列表中的元素
for(int i=0;i<list.Count;i++){ //循环体list[i]}foreach遍历
foreach(var temp in list){ //依次取得list中的每一个元素赋值给temp,并执行循环体 //循环体 temp }1,Capacity获取容量大小
2,Add()方法添加元素
var scoreList = new List<int>(); scoreList.Add(12); scoreList.Add(34); scoreList.Add(56); foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.ReadKey();3,Insert()方法插入元素
var scoreList = new List<int>(){100,200,300,100}; //遍历列表 foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.WriteLine(); scoreList.Insert(3, -100);//向指定索引位置插入元素,原来的元素向后移动一位。插入索引不能超出索引范围,插入索引最大可为scoreList.Count foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.WriteLine(); Console.ReadKey();4,[index]访问元素
5,Count属性访问元素个数
6,RemoveAt()方法移除指定位置的元素
scoreList.RemoveAt(1);//removeAt(index)填入要删除的索引7,IndexOf()方法取得一个元素所在列表中的索引位置
LastIndexOf()上面的方法是从前往后搜索,这个是从后往前搜索,搜索到满足条件的就停止,上面的两个方法,如果没有找到指定元素就返回-1
var scoreList = new List<int>(){100,200,300,100}; //遍历列表 foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.WriteLine(); Console.WriteLine(scoreList.IndexOf(400));查找不到返回-1 Console.WriteLine(scoreList.IndexOf(100)); Console.WriteLine(scoreList.LastIndexOf(100)); Console.ReadKey();8,Sort()对列表中是元素进行从小到大排序
var scoreList = new List<int>(){100,200,300,100}; //遍历列表 foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.WriteLine(); scoreList.Sort();//排序 foreach (var temp in scoreList) { Console.Write(temp + " "); } Console.WriteLine(); Console.ReadKey();1,列表内部数据是使用数组进行的存储,一个空的列表内部会有一个长度为0的数组,当给列表中添加元素的时候,列表的容量会扩大为4,如果添加第5个的时候,列表的大小会重新设置为8,如果添加第9个元素,列表容量会扩大为16,依次增加。当列表的中的容量发生改变的时候,它会创建一个新的数组,使用Array.Copy()方法将旧数组中的元素复制到新数组中。为了节省时间,如果事先知道要存储的数据的个数,就可以利用列表的构造函数指定列表的容量大小,比如下面的
List intlist = new List(10);创建了一个初始容量为10的列表,当容量不够用的时候,每次都会按照原来容量的2倍进行扩容。
我们可以通过Capacity属性获取和设置容量
intList.Capacity = 100;2,注意容量和列表中元素个数的区别,容量是列表中用于存储数据的数组的长度通过Capacity 获取,列表中的元素是我们添加进去需要管理的数据,通过Count获取
例如
List<int> intList = new List<int>();//创建列表 for (int i = 0; i < 20; i++) { Console.WriteLine("列表长度:" + intList.Capacity + " 元素个数:" + intList.Count); intList.Add(10); } Console.ReadKey();补充:C#中List怎么用?List基础用法汇总
C#中的List怎么样?List<T>类是ArrayList类的泛型等效类,该类使用大小可按需动态增加的数组实现IList<T>泛型接口。
泛型的好处:它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
性能注意事项:在决定使用IList<T>还是使用ArrayList类(两者具有类似的功能)时,记住IList<T>类在大多数情况下执行得更好并且是类型安全的。如果对IList<T>类的类型T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型T 使用值类型,则需要考虑实现和装箱问题。
C# List的基础常用方法:
1、List<T> mList = new List<T>();
T为列表中元素类型,现在以string类型作为例子:
List<string> mList = new List<string>();2、List<T> testList =new List<T> (IEnumerable<T> collection);
以一个集合作为参数创建List:
string[] temArr = { "Ha", "Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku", "Locu"};List<string> testList = new List<string>(temArr);1、List. Add(T item)添加一个元素
例:
mList.Add("John");2、List. AddRange(IEnumerable<T> collection)添加一组元素
例:
string[] temArr = {"Ha","Hunter","Tom","Lily","Jay","Jim","Kuku","Locu"};mList.AddRange(temArr);3、Insert(intindex, T item);在index位置添加一个元素
例:
mList.Insert(1,"Hei");foreach(TelementinmList)T的类型与mList声明时一样
{Console.WriteLine(element);}例:
foreach(stringsinmList){Console.WriteLine(s);}1、List. Remove(T item)删除一个值
例:
mList.Remove("Hunter");2、List. RemoveAt(intindex);删除下标为index的元素
例:
mList.RemoveAt(0);3、List. RemoveRange(intindex,intcount);
从下标index开始,删除count个元素
例:
mList.RemoveRange(3, 2);List. Contains(T item)返回true或false,很实用
例:
if(mList.Contains("Hunter")){Console.WriteLine("There is Hunter in the list");}else{mList.Add("Hunter");Console.WriteLine("Add Hunter successfully.");}List. Sort ()默认是元素第一个字母按升序
例:
mList.Sort();List. Reverse ()可以不List. Sort ()配合使用,达到想要的效果
例:
mList.Sort();例:
mList.Clear();List. Count ()返回int值
例:
in tcount = mList.Count();Console.WriteLine("The num of elements in the list: "+count);以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#对list列表进行随机排序的方法。分享给大家供大家参考。具体实现方法如下:publicListRandomSortList(ListListT
C#动态创建button按钮的方法实例详解C#编程中经常需要动态创建,本文主要介绍C#动态创建button按钮的方法,涉及C#按钮属性动态设置的相关技巧,以供借
前面简单介绍了Python字符串基本操作,这里再来简单讲述一下Python列表相关操作1.基本定义与判断>>>dir(list)#查看列表list相关的属性和方
list_style属性用于修改列表的属性格式如下:list_style:列表项标记类型列表项标记的位置列表项标记;也可以单独设置列表项标记:list-styl
list_style属性用于修改列表的属性格式如下:list_style:列表项标记类型列表项标记的位置列表项标记;也可以单独设置列表项标记:list-styl