分享

V3.1ArrayList类中元素的添加

 时间剧毒 2019-04-29

using System;

using System.Collections.Generic;

using System.Text;

using System.Collections;

namespace V3._ArrayList类中元素的添加

{

    class Program

    {

        static void Main(string[] args)

        {

            //前面讲到数组一旦给定大小就是固定的了,不能再改.还有一种数组是可以极高扩充的,

            //即 ArrayList 类   ,被称为动态数组或者集合

            //使用步骤:

            //1.引入命名空间 System.Collections 

            //2.创建实例

            //3.引用对应的属性或方法

            //ArrayList 好处是,长度不固定,类型随意

            //Capacity 获取或设置ArrayList 可包含的元素数

            //Count 获取ArrayList 实际包含的元素数

            //IsFixedSize 获取一个值,该值指示ArrayList是否具有固定大小

            //IsReadOnly  获取一个值,该值指示ArrayList是否为只读

            //Item 获取或设置指定索引处的元素

            ArrayList myArrayList = new ArrayList(5);

            Console.WriteLine("myArrayList初始化后有{0}个元素", myArrayList.Count);

            //ADD方法 只能添加单个元素,每次只能加一个

            myArrayList.Add(123);

            myArrayList.Add('a');

            myArrayList.Add("mystring");

            myArrayList.Add(25.6);

            myArrayList.Add(10L);

            Console.WriteLine("使用ADD后有{0}个元素", myArrayList.Count);

            //AddRange方法用于一次性向ArrayList中添加多个元素,可以使一个数组

            string[] mystringArray ={ "张三", "李四", "王五", "赵六" };

            myArrayList.AddRange(mystringArray);

            Console.WriteLine("使用AddRange后有{0}个元素", myArrayList.Count);

            //遍历集合元素

            //引用类型 string object类是所有类型的基类

            Console.WriteLine("遍历集合元素");

            foreach (object outelement in myArrayList) Console.Write(outelement + "\t");

            Console.WriteLine();

            //元素删除

            Console.WriteLine("元素删除");

            //1.Remove(值);

            Console.WriteLine("用方法Remove 删除后的结果:");

            myArrayList.Remove("张三");

            foreach (object outelement in myArrayList) Console.Write(outelement + "\t");

            //2.RemoveAt(索引值);

            Console.WriteLine("\n  用方法Remove 删除后的结果:");

            myArrayList.RemoveAt(3);

            foreach (object outelement in myArrayList) Console.Write(outelement + "\t");

            //3.RemoveRange(起始的索引,删除个数); 

            Console.WriteLine("\n 用方法Remove 删除后的结果:");

            myArrayList.RemoveRange(3,2);

            foreach (object outelement in myArrayList) Console.Write(outelement + "\t");

            //4.RemoveRange();   清除所有元素

            Console.WriteLine("\n 用方法Clear 清除所有元素:");

            myArrayList.Clear();

            foreach (object outelement in myArrayList) Console.Write(outelement + "\t");

            ////// ArrayList类中元素的遍历与查找 Shift +Alt +F10 命名空间调用

            Console.WriteLine("\n ArrayList类中元素的遍历与查找:");

            ArrayList myArrayList1 = new ArrayList();

            myArrayList1.Add("数字");

            int[] myintArray1 ={1,2,3,4,5,6,7,8,9 };

            myArrayList1.AddRange(myintArray1);

            myArrayList1.Add("字符串");

            string[] mystringArray1 ={ "张三", "李四", "王五", "赵六" };

            myArrayList1.AddRange(mystringArray1);

            foreach (object outElement in myArrayList1) Console.Write(outElement + "\t");

            //元素查找 

            //1.IndexOf(要查的元素)   首次 找不到返回-1

            //2.LastIndexOf(要查的元素) 最后次  找不到返回-1

            //3.BinarySearch 查找不到返回 负数

            Console.WriteLine("\n IndexOf查找的值位置" + myArrayList1.IndexOf("张三"));

            //Console.WriteLine("\n IndexOf查找的值位置" + myArrayList1.BinarySearch ("张三"));  //因为类中 数据类型不同无法使用

            //冒泡排序

            Console.WriteLine("\n  冒泡排序,请输入6个整数,我们将对它进行排序");

            int[] myintArray3 = new int[6];

            for (int i = 0; i < myintArray3.Length; i++) {

                myintArray3[i] = Convert.ToInt32(Console.ReadLine()); 

            }

            //进行排序

                for (int i = 0; i < myintArray3.Length - 1; i++)

                {

                    int temp;

                    for (int j = 0; j < myintArray3.Length - 1 - i; j++)

                    {

                        //升序排列

                        if (myintArray3[j] < myintArray3[j + 1])

                        {

                            temp = myintArray3[j];

                            myintArray3[j] = myintArray3[j + 1];

                            myintArray3[j + 1] = temp;

                        }

                    }

                }

             foreach (object outElement in myintArray3) Console.Write(outElement + "\t");

            Console.ReadKey();

        }

    }

}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多