
我的代码如下
using System;
using System.Collections;
using System.Collections.Generic; namespace crse3355ae_lab01
{
class Vehicle<T>
{
T vin;
public T VIN
{
get
{
return vin;
}
}
T year;
public T Year
{
get
{
return year;
}
}
public Vehicle(T vin, T year)
{
this.year = year;
this.vin = vin;
} } class Dealership<K, V> : IEnumerable<V>
{
private Dealership() { }
static Dealership<K, V> dealerShipInstance = null; public static Dealership<K, V> Instance
{
get
{
if (dealerShipInstance == null)
{
dealerShipInstance = new Dealership<K, V>();
}
return dealerShipInstance;
} } SortedDictionary<K, V> inventory;
public V this[K vin]
{
get
{
V item = default(V);
if (inventory.TryGetValue(vin, out item))
{
return item;
}
return default(V);
}
set
{
inventory[vin] = value;
}
}
public IEnumerator<V> GetEnumerator()
{
foreach (V item in inventory.Values)
{
yield return item;
}
}
}
class Dealer
{
static void Main()
{
Dealership<string, Vehicle<string>> ship = Dealership<string, Vehicle<string>>.Instance;
ship["1923"] = new Vehicle<string>("1923", "1900");
foreach (Vehicle<string> item in ship)
{
Console.WriteLine("VIN={0};Year={1}", item.VIN, item.Year);
} }
} }