蓝鸥Unity开发基础二——课时22 ArrayList
一、ArrayList
集合:集合是种容器,在程序中,使用集合管理相关对象组
集合分为非泛型集合和泛型集合
推荐视频讲师博客:http://11165165.blog.51cto.com/
二、非泛型集合:使用非泛型集合需要引起命名空间System.Collections
ArrayList——可以根据需要动态增加的数组
Hashtable——用来存储键值对的哈希表
Queue——遵循先进先出的对列
Stack——遵循后进先出的栈
三、泛型集合:使用泛型集合需要引入命名空间System.Collections.Generic
List<T>——可以根据需要动态增加的数组
Dictionary<Tkey,Tvalue>——用来存储键值对的哈希表
Queue<T>——遵循先进先出的对列
Stack<T>——遵循后进先出的栈
四、ArrayList
ArrayList是一个特殊的数组
通过添加或删除元素就可以动态改变数组长度
可以灵活地插入,删除,访问元素
不是强类型,速度跟普通的数组比要慢
using System;
//使用非泛型集合需要引入命名空间
using System.Collections;
namespace Lesson_22
{
    class MainClass
    {
        public  static void Log(ArrayList arr){
            string str = "当前数组中有"+arr.Count+"个元素:(";
            for (int i = 0; i < arr.Count; i++) {
                str+=arr[i];
                if(i<arr.Count-1){
                    str+=",";
                }
                
            }
            str+=")";
            Console.WriteLine(str);
        }
        public static void Main (string[] args)
        {
            //1、首先创建对象
            ArrayList arr = new ArrayList ();
            Log (arr);
            //使用Add()方法添加元素,对元素类型没有限制
            arr.Add(17);
            arr.Add (63.5f);
            arr.Add ("老王");
            Log (arr);
            //使用[下标]来获取指定位置的元素
            //注意数组越界的问题
//            Console.WriteLine("arr[0]="+arr[0]);
            //获取当前数组中元素的数量
            int count = arr.Count;
            //使用insert()方法向指定下标位置插入元素
            arr.Insert(1,"老张");
            Log (arr);
            //使用Remove()方法从数组中删除指定元素
            arr.Remove ("老张");
            Log (arr);
            //使用RemoveAt()方法,将指定下标位置的元素删除
            arr.RemoveAt(0);
//            arr.RemoveAt (1);
            Log (arr);
            //判断指定元素释放存在当前数组中
            bool b=arr.Contains ("老王");
            if (b) {
                Console.WriteLine ("老王在数组中");
            } else {
                Console.WriteLine ("老王已经不在了");
            }
            //清空整个数组
            arr.Clear ();
            Log (arr);
        }
    }
}
原文:http://11131960.blog.51cto.com/11121960/1846649