Arraylist集合方法总结

目录

简述

添加数据

插入数据

删除数据

其他常用方法

排序和遍历

集合实例


上一篇博客中已经介绍了什么是arraylist,不清楚的小伙伴们,可以看一下哦

简述

下面主要介绍一下arraylist一些常用的方法

添加数据

在使用arraylist集合前,必须先要对集合进行实例化,添加数据有三种方式。
第一种:可以通过集合的构造函数添加一个数组(不局限于数组,只要是接口可以实现的都可以)
第二种:通过Add()方法可以添加任何一个数据,添加数组或者类的时候只能算作一个元素
第三种:通过AddRange()也可以添加数组,而且添加到集合当中是数组元素的个数,数组中有多少元素,就添加到集合当中多少个
总结:构造函数或者addrange()方法都可以直接显示出数组的各个元素,add方法添加数组只能算作一个元素,显示System.Int[32]

            int[] nums = new int[] { 1, 4, 5, 7 };   //创建一个数组
            ArrayList al = new ArrayList(nums); //---用构造函数添加这个数组,集合中显示数组的所有元素
            al.Add(1);          //用add方法向数组中添加元素,int类型
            al.Add("老牛");     //用add方法向数组中添加元素,string类型
            al.Add(nums);       //通过add()方法添加一个数组,集合中只能算作一个元素,想要显示出数组当中所有的元素,要通过强制转换,然后for循环遍历出来
            al.AddRange(nums);  //通过AddRange()方法添加一个数组,集合中显示的是数组当中的元素,数组当中有几个元素,就显示几个元素

插入数据

一个集合中存放了1,3,5,7,9,现在想把2,4,6,8,10加进去

ArrayList al = new ArrayList();     //实例化一个集合
 
 for (int i = 1; i < 10; i += 2)
 {
     al.Add(i);            //for循环,向集合中添加1,3,5,7
 }
//用insert方法将2,4,6,8,10加进去
//方法一:一个个添加
al.Insert(1,2);          //表示从哪个索引值处开始添加,添加的内容是什么
al.Insert(3, 4);
al.Insert(5, 6);
al.Insert(7, 8);
al.Insert(9, 10);
//方法二:for循环添加
for (int i = 1; i <10; i+=2)
{
    al.Insert(i,i+1);
}
//insertRange:往某一个索引位置插入一个数组
int[] num3 = new int[] { 1, 2, 4, 5 };
al.Insert(5, num3);      //显示在集合中视作一个元素

删除数据

            ArrayList al = new ArrayList();     //实例化一个集合
            //向集合添加3个数据
            al.Add(10);        
            al.Add("haha");
            al.Add(999);
            al.Clear();    //将集合中的内容删除
            //remove:从集合中将某个元素移除
            al.Remove(999);                //移除集合中第一个999
            al.RemoveAt(0);                //移除索引对应的值
            al.RemoveRange(1,1);           //从指定索引处开始移除,移除多少个,如果超出索引报异常

其他常用方法

            ArrayList al = new ArrayList();     //实例化一个集合
            //向集合中添加数据
            al.Add(10);
            al.Add("haha");
            int[] nums = new int[] { 999, 999, 999 };        //创建一个数组
            al.AddRange(nums);            //将该数组添加到集合当中去
            //contains:判断这个集合中是否包含这个元素,返回的类型为bool类型
            bool result=al.Contains("haha");
            if (result)
            {
                Console.WriteLine("此集合包含这个元素");
            }
            else
            {
                Console.WriteLine("此集合不包含这个元素");
            }
            //count:统计集合中的元素的个数,返回值为int类型
            int num = al.Count;
            Console.WriteLine("此集合中元素个数为{0}个",num);
            //indexof:找某一个元素对应的索引,返回类型为int类型的索引值
            int num1=al.IndexOf("haha");
            Console.WriteLine("对应的索引值为{0}",num1);

            

排序和遍历

            //sort:集合的排序    reverse:集合的反转
            ArrayList al = new ArrayList();
            for (int i = 1; i <= 100; i++)
            {
                al.Add(i);     //向集合中添加1-100
            }
            al.Reverse();       //反转  输出100-0
            //al.Sort();          //排序 输出 0-100
            //集合的遍历
            //循环输出集合中的元素
            for (int i = 0; i < al.Count; i++)
            {
                Console.WriteLine(al[i]);
            }
            Console.ReadKey();            

集合实例


            ArrayList arraylist = new ArrayList();    //实例化一个集合
            int[] nums = new int[4] { 2, 3, 5, 6 };   //定义一个int类型数组
            Person p = new Person();                  //实例化person类        
            //给集合添加数据,用add()这个方法,添加的顺序就是集合下标或索引的顺序
            //添加的内容,无限添加
            arraylist.Add(10);          //可以添加int类型数据
            arraylist.Add(20);
            arraylist.Add("小苏");      //可以添加字符串类型数据
            arraylist.Add('女');        //可以添加字符类型的数据
            arraylist.Add(true);        //可以添加bool类型的数据
            arraylist.Add(3.15m);       //可以添加decimal类型数据
            arraylist.Add(78.9);        //可以添加double类型数据
            arraylist.Add(nums);     //向集合中添加数组时候,显示集合内容的时候不能直接显示数组中各个元素的值,需要加一个强制转换的判断
            arraylist.Add(p);       //向集合中添加类的时候,显示集合内容不能直接显示类的内容,需要加一下强制转换的判断
            //下面代码是给集合元素重新赋值,并没有向集合中添加任何新的元素
            arraylist[0] = 100;
            arraylist[1] = 200;
            arraylist[2] = "小苏";
            arraylist[3] = '女';
            arraylist[4] = true;
            arraylist[5] = 3.15m;
            arraylist[6] = 78.9;
            arraylist[7] = nums;
            //arraylist集合的显示
            for (int i = 0; i <arraylist.Count; i++)
            {
                if (arraylist[i] is int[])     //判断集合元素是否是int类型的数组
                {
                    int[] numbers = (int[])arraylist[i];  //将集合元素强制转换为int类型的数组
                    for (int j = 0; j < numbers.Length; j++)
                    {
                        Console.WriteLine(numbers[j]);   //显示数组中各个元素
                    }
                }
                else if (arraylist[i] is Person)
                {
                    
                   ((Person)arraylist[i]).Say();  //强制转换成person类并显示类当中的方法
                }
                else
                {
                    Console.WriteLine(arraylist[i]);    //显示集合当中的内容
                }
            }
            Console.ReadKey();
        
        }

对上面代码的简单总结:

1.arraylist.Add(20);向集合中添加数据,可以是任意类型的数据,也可以是数组和类,但是添加数组和类的时候,显示集合内容不能直接显示类的内容或者数组的内容,需要加一下强制转换的判断

int[] numbers = (int[])arraylist[i];  //将集合元素强制转换为int类型的数组

 ((Person)arraylist[i]).Say();  //强制转换成person类并显示类当中的方法

2. ArrayList arraylist = new ArrayList();    //实例化一个集合

3. arraylist[0] = 100;利用下标(索引)给集合元素重新赋值,并没有向集合中添加任何新的元素,只是重新赋值

4.集合元素索引(下标)的顺序就是添加数据的顺序,从0开始,依次向后排

5..count集合元素的总个数

发布了71 篇原创文章 · 获赞 21 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/wtt15100/article/details/104460377
今日推荐