ArrayList

//  从1个集合中拿出某个元素,用完了之后将元素返还给该集合

public ArrayList EnemyEvent = new ArrayList();// 不同于 Java中 的指定对象类型的实例化
    public ArrayList EnemyEventUsed = new ArrayList();
    public void GetEnemyPath(string path) {
        EnemyEvent.Clear();//   清空数组中的所有元素
        EnemyPathEvent = ResourceLoad.FindObj(path);
        for (int i = 0; i < EnemyPathEvent.transform.GetChildCount();i++ )
        {
            //  向数组中添加元素
            EnemyEvent.Add(EnemyPathEvent.transform.GetChild(i).gameObject);
        }
        print(" There has "+EnemyEvent.Count+" events ...");
    }

public GameObject RandomEnemyPath() {
        int i = Random.Range(0, EnemyEvent.Count);
        Debug.Log(" Now choose the path --->  "+i);
        //int i = 0;
        GameObject pathObj = (GameObject)EnemyEvent[i];
        EnemyEvent.RemoveAt(i);//   移除数组中第 i 个的元素
        EnemyEvent.TrimToSize();//  重置数组大小
        EnemyEventUsed.Add(pathObj);
        Invoke("RelasedPath", 6);//     此方法(Invoke)不能调用含参数的方法
        return pathObj;
    }
    //  释放被霸占的元素
    public void RelasedPath() {
        EnemyEvent.Add(EnemyEventUsed[0]);
        EnemyEvent.TrimToSize();
        EnemyEventUsed.RemoveAt(0);
        EnemyEventUsed.TrimToSize();

}

Hashtable

// 声明 Hashtable 类型的集合

public Hashtable EnemyPathUsed = new Hashtable();

// 向该集合添加元素

EnemyPathUsed.Add("E1", 0);

// 取出该元素

print(EnemyPathUsed["E1"]);

对Hashtable 中元素中取值的时候注意了:

需要强制转换一下: if((int)EnemyPathUsed[path] == 0){ Debug.log( " It's true ... " );}

javascripts List 集合格式:

public var affected : List.<GameObject> = new List.<GameObject> ();

c# ArrayList 和 Hashtable 的使用相关推荐

  1. ArrayList、HashTable、List、Dictionary的演化及如何选择使用

    在C#中,数组由于是固定长度的,所以常常不能满足我们开发的需求. 由于这种限制不方便,所以出现了ArrayList. ArrayList.List<T> ArrayList是可变长数组,你 ...

  2. c#中Dictionary、ArrayList、Hashtable和数组 Array 的区别(转)

    C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue 1.数组是固定大小的,不能伸缩.虽然System.Array.Resize这个 ...

  3. 分析Vector、ArrayList、Hashtable、HashMap数据结分享一下

    分析Vector.ArrayList.Hashtable.HashMap数据结分享一下 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据 ...

  4. [转]Vector、ArrayList和hashtable hashmap数据结构

    线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构.这些类均在java.util包中.本文试图通过简单的描述,向读者阐述各个类的作用以 ...

  5. C#的ARRAYLIST 和HASHTABLE示例代码

    慢慢积累吧. 为了给公司升级服务器,等到现在. IT不容易呀. 1 using System; 2 using System.Collections.Generic; 3 using System.L ...

  6. C#集合类(HashTable, Dictionary, ArrayList)与HashTable线程安全

    HashTable中的key/value均为object类型,由包含集合元素的存储桶组成.存储桶是 HashTable中各元素的虚拟子组,与大多数集合中进行的搜索和检索相比,存储桶可令搜索和检索更为便 ...

  7. [C#]泛型与非泛型集合类的区别及使用例程,包括ArrayList,Hashtable,ListT,DictionaryTkey,Tvalue,SortedListTkey,Tvalue,...

    今天有空正好把泛型和非泛型集合类写了一个比较,并做了个的例程,可以比较清楚的理解它们概念和使用方法. 泛型与非泛型集合类在C#程序中是非常重要的一个基础概念,这里列一个表来进行对比: 非泛型集合类 泛 ...

  8. 浅析几种数据集合(Dictionary、ArrayList、Hashtable和Array)的区别

    数组 Array: 数组是固定大小的,不能伸缩,要声明元素的类型. 数组可读可写不能声明只读数组:数组要有整数下标才能访问特定的元素 (强类型约束) ArrayList: 数组的复杂版本,动态数组类型 ...

  9. OAF_开发系列17_实现OAF数组应用Vector / Hashmap / Hashtable / Arraylist(案例)

    20150506 Created By BaoXinjian 一.摘要 Vector.ArrayList和Hashtable Jashmap的异同 线性表,链表,哈希表是常用的数据结构,在进行Java ...

最新文章

  1. UVA 11020 - Efficient Solutions(set)
  2. 简单的客户端,服务端通信
  3. Hive 和普通关系数据库的异同
  4. 剑指Offer——不用加减乘除做加法
  5. 有关单点登录的几种方案
  6. Java基础-String和StringBuilder类型(11)
  7. shell脚本把昨天的txt打成tar包
  8. 分布式是写出来的(一)
  9. Apache JMeter 字体、字体大小修改
  10. dockerfile如何运行镜像内的脚本_第七章 Dockerfile文件解析(一)
  11. sort,uniq命令
  12. python 列表list相关知识
  13. 《乔布斯传》圈点(9)
  14. 多级父子关系数据库设计
  15. PID控制器、试凑法整定
  16. win10兼容模式怎么设置_win10开始菜单没反应怎么办?是因为没有设置这个
  17. 高速公路上边有没有人脸识别摄像头_支小蜜初高中智慧校园人脸识别消费系统...
  18. linux glib,我该如何安装glib?
  19. 电信近期有充值送红包的活动
  20. fastdfs添加storage节点

热门文章

  1. [Qt]图像处理小软件——给证件照换背景
  2. 关于在IE8浏览器的环境下页面一直刷新的问题
  3. juniper:SRX-产品简介
  4. 利用NI模拟量输出板卡LabVIEW输出正弦波形的方法
  5. Flask框架(一)flak视图和URL
  6. 递归查询Sdcarad文件中的音乐,图片类同
  7. 遥感影像识别-成像合成
  8. 华为云迁移工具推荐最佳实践:Xen虚拟化迁移到华为云
  9. ysoserial URLDNS解析
  10. IDEA 2019.1离线安装lombok