c# ArrayList 和 Hashtable 的使用
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 的使用相关推荐
- ArrayList、HashTable、List、Dictionary的演化及如何选择使用
在C#中,数组由于是固定长度的,所以常常不能满足我们开发的需求. 由于这种限制不方便,所以出现了ArrayList. ArrayList.List<T> ArrayList是可变长数组,你 ...
- c#中Dictionary、ArrayList、Hashtable和数组 Array 的区别(转)
C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue 1.数组是固定大小的,不能伸缩.虽然System.Array.Resize这个 ...
- 分析Vector、ArrayList、Hashtable、HashMap数据结分享一下
分析Vector.ArrayList.Hashtable.HashMap数据结分享一下 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据 ...
- [转]Vector、ArrayList和hashtable hashmap数据结构
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构.这些类均在java.util包中.本文试图通过简单的描述,向读者阐述各个类的作用以 ...
- C#的ARRAYLIST 和HASHTABLE示例代码
慢慢积累吧. 为了给公司升级服务器,等到现在. IT不容易呀. 1 using System; 2 using System.Collections.Generic; 3 using System.L ...
- C#集合类(HashTable, Dictionary, ArrayList)与HashTable线程安全
HashTable中的key/value均为object类型,由包含集合元素的存储桶组成.存储桶是 HashTable中各元素的虚拟子组,与大多数集合中进行的搜索和检索相比,存储桶可令搜索和检索更为便 ...
- [C#]泛型与非泛型集合类的区别及使用例程,包括ArrayList,Hashtable,ListT,DictionaryTkey,Tvalue,SortedListTkey,Tvalue,...
今天有空正好把泛型和非泛型集合类写了一个比较,并做了个的例程,可以比较清楚的理解它们概念和使用方法. 泛型与非泛型集合类在C#程序中是非常重要的一个基础概念,这里列一个表来进行对比: 非泛型集合类 泛 ...
- 浅析几种数据集合(Dictionary、ArrayList、Hashtable和Array)的区别
数组 Array: 数组是固定大小的,不能伸缩,要声明元素的类型. 数组可读可写不能声明只读数组:数组要有整数下标才能访问特定的元素 (强类型约束) ArrayList: 数组的复杂版本,动态数组类型 ...
- OAF_开发系列17_实现OAF数组应用Vector / Hashmap / Hashtable / Arraylist(案例)
20150506 Created By BaoXinjian 一.摘要 Vector.ArrayList和Hashtable Jashmap的异同 线性表,链表,哈希表是常用的数据结构,在进行Java ...
最新文章
- UVA 11020 - Efficient Solutions(set)
- 简单的客户端,服务端通信
- Hive 和普通关系数据库的异同
- 剑指Offer——不用加减乘除做加法
- 有关单点登录的几种方案
- Java基础-String和StringBuilder类型(11)
- shell脚本把昨天的txt打成tar包
- 分布式是写出来的(一)
- Apache JMeter 字体、字体大小修改
- dockerfile如何运行镜像内的脚本_第七章 Dockerfile文件解析(一)
- sort,uniq命令
- python 列表list相关知识
- 《乔布斯传》圈点(9)
- 多级父子关系数据库设计
- PID控制器、试凑法整定
- win10兼容模式怎么设置_win10开始菜单没反应怎么办?是因为没有设置这个
- 高速公路上边有没有人脸识别摄像头_支小蜜初高中智慧校园人脸识别消费系统...
- linux glib,我该如何安装glib?
- 电信近期有充值送红包的活动
- fastdfs添加storage节点