• 动态数组


    1、命名空间

    using System.Collections;

    2、简介

    ArrayList就是传说中的动态数组,它可以动态的增加和减少元素,另外它可以存储任意个数和任意类型的元素。

    3、属性

    Count属性是目前ArrayList包含的元素的数量,这个属性是只读的 Capacity属性是目前ArrayList能够包含的最大数量,可以手动的设置这个属性,但是当设置为小于Count值的时候会引发一个异常。

    4、方法

    Add(v):添加一个元素(参数v,任何类型)到当前列表的末尾 ;

    AddRange方法用于添加一批元素到当前列表的末尾 ;

    Remove方法用于删除一个元素,通过元素本身的引用来删除 ;

    RemoveAt(i):方法用于删除一个元素,通过索引值(参数i)来删除 ;

    RemoveRange用于删除一批元素,通过指定开始的索引和删除的数量来删除 ;

    Insert用于添加一个元素到指定位置,列表后面的元素依次往后移动 ;

    InsertRange用于从指定位置开始添加一批元素,列表后面的元素依次往后移动 ;

    Clear():方法用于清除现有所有的元素 ;

    Contains(v):方法用来查找某个对象(参数v)在不在列表之中 ;

    ToArray(Type t):这个方法把ArrayList的元素Copy到一个新的数组中,参数为Type类型;

    5、ArrayList与数组转换

    ----元素类型相同的转换 

    a、ArrarList 转换为 string[] 

    ArrayList list = new ArrayList();   

    list.Add("aaa");   

    list.Add("bbb"); 

    string[] arrString = (string[])list.ToArray(typeof(string)); //转换成数组

    b、string[] 转换为 ArrarList   

    ArrayList list = new ArrayList(new string[] { "aaa", "bbb" });

    c、ArrayList 转换为 string

    ArrayList list = new ArrayList();   

    list.Add("aaa");   

    list.Add("bbb");   

    string str= string.Join(",", (string[])list.ToArray(typeof( string)));

    d、CopyTo() 

    int[] list3 = new int[list.Count];      

    list.CopyTo(list3)

    ----元素类型不同的转换

    ArrayList arr = new ArrayList(){ "北京", 1};  //往数组中添加不同类型的元素

    object[] arr2 = (object[])arr.ToArray(typeof(object)); //正确

    string[] arr3 = (string[])arr.ToArray(typeof(string)); //有人说是错的,我测试没出问题,所以正确

    6、实例            

    ArrayList arr = new ArrayList();            

    for (int i = 0; i < 7; i++)            

    {                

      arr.Add(i);// 向数组里添加元素

     }            

    arr.Insert(arr.Count, 11);// 向数组插入元素(arr.Count索引,11为值)            

    arr.AddRange(new int[] { 12, 13 }); // 在ArrayList末尾添加元素

    7、往一个数组里添加一个数组,即将ArrayList变为二维数组            

    ArrayList list= new ArrayList();            

    int[] arr = { 88, 99 };            

    for (int i = 0; i < 7; i++)            

    {  

      list.Add(new ArrayList(arr));                                         

    }          

    调用该数组的某个值: int value = (int)((ArrayList)list[1])[1];

  • 相关阅读:
    纯CSS实现的很酷的卡通肖像和眨眼动效
    RMQ(区间求最值)
    CentOS---网络配置具体解释
    breakpoints &amp;&amp; lldb &#160;&amp;&amp; chisel 的使用
    c语言单链表实现
    hdu1595 find the longest of the shortest(Dijkstra)
    POJ 3254 Corn Fields 状态压缩
    我多希望我学编程时,有人教我这些事!
    tts和字符集的关系--要求源和目的端的数据库字符集必须一样,国家字符集必须一样。
    [读后感]编程能力与编程年龄
  • 原文地址:https://www.cnblogs.com/bingsying/p/7846475.html
Copyright © 2020-2023  润新知