Extends IEnumerable
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
public class Employee {
public int currAge;
public string fName, lName;
public Employee() { }
public Employee(string firstName, string lastName, int age) {
currAge = age;
fName = firstName;
lName = lastName;
}
public override string ToString() {
return string.Format("{0}, {1} is {2} years old",
lName, fName, currAge);
}
}
public class PeopleCollection : IEnumerable {
private ArrayList arPeople = new ArrayList();
public PeopleCollection() { }
public Employee GetEmployee(int pos) { return (Employee)arPeople[pos]; }
public void AddEmployee(Employee p) { arPeople.Add(p); }
public void ClearPeople() { arPeople.Clear(); }
public int Count { get { return arPeople.Count; } }
IEnumerator IEnumerable.GetEnumerator() { return arPeople.GetEnumerator(); }
}
class Program {
static void Main(string[] args) {
PeopleCollection myPeople = new PeopleCollection();
myPeople.AddEmployee(new Employee("Homer", "Simpson", 40));
myPeople.AddEmployee(new Employee("Marge", "Simpson", 38));
myPeople.AddEmployee(new Employee("Lisa", "Simpson", 9));
myPeople.AddEmployee(new Employee("Bart", "Simpson", 7));
myPeople.AddEmployee(new Employee("Maggie", "Simpson", 2));
foreach (Employee p in myPeople)
Console.WriteLine(p);
}
}
Related examples in the same category