原来的农场,只有俩动物,这是非常地不科学地!
农场中的动物应该是变化地,今天生几个,明天生几个... 还可能采购,也可能出售.
怎么办?使用集合,来保存农场中的动物.你首先想到的是ArrayList.下面这样改代码:
Farm类中加入引用
using
System.Collections;
Farm类中类似这样的写法
public
class
Farm
{
public ArrayList animals;
/// <summary>
/// 构造方法 开始建农场了 初始化
/// </summary>
public Farm()
{
animals = new ArrayList();
}
public void AddAnimal(Animal someAnimal)
{
animals.Add(someAnimal);
}
public void ShowAnimals()
{
Console.WriteLine( " 农场里有{0}只动物 " ,animals.Count) ;
foreach (Animal a in animals)
{
a.ShowInfo();
}
}
}
{
public ArrayList animals;
/// <summary>
/// 构造方法 开始建农场了 初始化
/// </summary>
public Farm()
{
animals = new ArrayList();
}
public void AddAnimal(Animal someAnimal)
{
animals.Add(someAnimal);
}
public void ShowAnimals()
{
Console.WriteLine( " 农场里有{0}只动物 " ,animals.Count) ;
foreach (Animal a in animals)
{
a.ShowInfo();
}
}
}
好了,我们可以使用AddAnimal ,往农场中加动物.使用ShowAnimals显示农场的动物信息.
class
Program
{
static void Main( string [] args)
{
Animal cock = new Animal( " cock " , 1 );
Animal goat = new Animal( " xiyangyang " , 3 );
Farm myFarm = new Farm();
myFarm.AddAnimal(cock);
myFarm.AddAnimal(goat);
myFarm.AddAnimal( new Animal( " dog " , 2 ));
myFarm.ShowAnimals();
}
}
{
static void Main( string [] args)
{
Animal cock = new Animal( " cock " , 1 );
Animal goat = new Animal( " xiyangyang " , 3 );
Farm myFarm = new Farm();
myFarm.AddAnimal(cock);
myFarm.AddAnimal(goat);
myFarm.AddAnimal( new Animal( " dog " , 2 ));
myFarm.ShowAnimals();
}
}
-----------------------------------------------------------------------
ArrayList已经过时了 ,泛型List<T>
确认名称空间引入
using
System.Collections.Generic;
//
泛型
代码如下:
public
class
Farm
{
public List < Animal > animals;
/// <summary>
/// 构造方法 开始建农场了 初始化
/// </summary>
public Farm()
{
animals = new List < Animal > ();
}
public void AddAnimal(Animal someAnimal)
{
animals.Add(someAnimal);
}
public void ShowAnimals()
{
Console.WriteLine( " 农场里有{0}只动物 " ,animals.Count) ;
foreach (Animal a in animals)
{
a.ShowInfo();
}
}
}
{
public List < Animal > animals;
/// <summary>
/// 构造方法 开始建农场了 初始化
/// </summary>
public Farm()
{
animals = new List < Animal > ();
}
public void AddAnimal(Animal someAnimal)
{
animals.Add(someAnimal);
}
public void ShowAnimals()
{
Console.WriteLine( " 农场里有{0}只动物 " ,animals.Count) ;
foreach (Animal a in animals)
{
a.ShowInfo();
}
}
}