变量不能按照您的意愿动态命名,但通过使用数组或列表(但请不要使用ArrayLists,下面更多!),您可以通过索引访问。
创建List<Enemy>
(List<T>
在System.Collections.Generic发现)
var enemies = new List<Enemy>();
enemies.Add(new Enemy()); // add as many as you need
或者,如果集合不需要是动态调整大小,你可以使用一个简单的数组,其中有几个法律创建语法。
Enemy[] enemies = { new Enemy(), new Enemy(), new Enemy() };
然后,你可以写你的循环并获得通过指数
// enemies.Count if using List<Enemy>
// enemies.Length if using Enemy[] array
for (int index = 0; index < enemies.Count; index++)
{
enemies[index].FireWeapon();
}
或者写一个foreach循环
foreach (Enemy enemy in enemies)
{
enemy.FireWeapon();
}
您对使用ArrayList
想法已经过时了从C#2.0+开始(目前市场上的发行版是C#4.0),或者Visual Studio 2005(2010是目前的市场版本)。最好使用前面提到的System.Collections.Generic命名空间中的强类型泛型集合。
什么是你想通过这样做是为了达到什么目的?有一个更好的方法来做你想做的事情? “列表”有什么问题? –