当前位置:   article > 正文

C# 集合(ArrayList)的方法和使用_c# arraylist

c# arraylist

中文意思:
在这里插入图片描述
集合和数组的区别?

数组:
只能放同一个类型的数据 ,例如:int 那么只能给他提交int类型的数据,并且长度赋值了就无法改变,比较单一

集合:
可以存放任何类型的数据(继承于object)如int,string等都可以直接添加,他的长度可以任意改变,
在这里插入图片描述


Add(添加数据):
集合创建后,如要对他就行赋值,就要使用Add()方法进行添加,
集合可以添加任何类型的数据

ArrayList a = new ArrayList();
  a.Add("小马哥的棺材板"); //字符串类型
  
  a.Add(20);//整数类型
  
a.Add(3.14);//double类型

  a.Add('x');//char类型
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

AddRange(数组数据等):
如果使用上面方法添加数组数据的话,拿到的只是他的命名空间,

ArrayList a = new ArrayList();

int[] b = {10,20,30 };

 a.Add(b);
 
 //循环出他的长度
for (int i = 0; i <=a.Count-1; i++)
 {
 Console.WriteLine(a[i]);
         }        
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

在这里插入图片描述

如果要添加数组就得使用AddRange()方法

ArrayList a = new ArrayList();

 int[] b = {10,20,30 };
 
  a.AddRange(b);
  
  for (int i = 0; i <=a.Count-1; i++) 
  Console.WriteLine(a[i]);        
            
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
Count(循环显示集合的内容):
在添加内容后把内容显示出来,如不知道集合长度需要使用Count,
和数组的Length的使用方法一样,只是变了个单词,从0开始记得-1

ArrayList a = new ArrayList();
  a.Add("小马哥的棺材板"); //字符串类型
for (int i = 0; i <=a.Count-1; i++) {
Console.WriteLine(a[i]);        
            }
  • 1
  • 2
  • 3
  • 4
  • 5

Remove(删除单个元素):
有添加当然也有删除,下面创建了一个集合添加了20和小马哥,调用Remove()方法把小马哥删除了

 ArrayList a = new ArrayList();       
 a.Add(20);//添加
 a.Add("小马哥");//添加
 a.Remove("小马哥");//删除
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
RemoveAt(按下标删除):
和数组一样0开始的
在这里插入图片描述
删除了2,也就是“的棺材板”
在这里插入图片描述
RemoveRange(按下标范围删除):
和上面一样只不过是范围, 删除了1到2的内容,

 ArrayList a = new ArrayList();
 a.Add(10);
 a.Add(20);
 a.Add("小马哥");
  a.Add("的棺材板");
 a.RemoveRange(1,2);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

Clear(清空所有内容):
调用该方法可以清空之前所赋值的内容

ArrayList a = new ArrayList();       
 a.Add(20);
a.Clear();//清除所有内容
  • 1
  • 2
  • 3

集合里添加了一个“20”然后调用了Clear清除了所有内容,现在集合为空

Sort(升序):
可以对集合的内容进行从小到大的排序,但必须是同类型的int或者double才可以进行排序,如有汉字等就会报错

 ArrayList a = new ArrayList();
 a.Add(10.1); 
 a.Add(20.5);
 a.Add(5.2);
 a.Add(3.14);
 a.Sort();//使用这个方法排序
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
Reverse(反转数据):
把所以的顺序返过
如没使用这个方法10.1应该在第一个

ArrayList a = new ArrayList();
a.Add(10.1); 
a.Add(20.5);
a.Add(5.2);
a.Add(3.14);
a.Reverse();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
Insert(通过下标插入数据):
在1号下标前面插入了“小马哥” 也就是20.5的前面

ArrayList a = new ArrayList();
 a.Add(10.1); 
 a.Add(20.5);
 a.Add(5.2);  
 a.Add(3.14);
 a.Insert(1,"小马哥");
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
InsertRange(通过下标插入数组):
和上面的使用方法一样,只不过是数组这些等

  ArrayList a = new ArrayList();
   int[] b = { 60, 20, 30, 540, 55 };
 a.Add(10.1); 
  a.Add(20.5);
 a.Add(5.2);
 a.Add(3.14);
 a.InsertRange(1,b);
//在20.5前面插入了b的元素
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述
Contains(是否存在指定内容):
可以判断你指定的内容是否存在
判断3.14是否存在

ArrayList a = new ArrayList();          
a.Add(10.1); 
 a.Add(20.5);
 a.Add(5.2);
a.Add(3.14);
 if (a.Contains(3.14)) {
 Console.WriteLine("我在里面");
 }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述

练习:
上面说到使用Sort可以进升序(小到大)但是并没有提供降序的方法,可以使用,但是可以使用Reverse(反转)配合Sort也可以达到降序的效果,

 ArrayList a = new ArrayList();
a.Add(10.1); 
 a.Add(20.5);
 a.Add(5.2);
a.Add(3.14);
 a.Sort();//从小到大排序
  a.Reverse();//反转了就是从大到小
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述
纯手打,点个赞呗~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/766562
推荐阅读
相关标签
  

闽ICP备14008679号