using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Csh { public enum MyEnum//这个直接用到class里面去 { onr, teee, threee } public class sth//将被字典的类 { public MyEnum x { get; set; } public int z { get; set; } } class _08_DictionTry { static Dictionary<MyEnum, sth> ages; static void Main() { sth x = new sth(); x.x = MyEnum.onr; x.z = 1; sth y = new sth(); y.x = MyEnum.onr; y.z = 2; sth z = new sth(); z.x = MyEnum.onr; z.z = 3; sth[] xa = { y, x, z };//实例化并且列表话类 ages = new Dictionary<MyEnum, sth>();//字典 foreach (sth item in xa) { ages[item.x] = item;//通过类里的相同item与相同的item对应上,这样一来不论实例化的顺序是什么,字典里的顺序都会按照实例化的顺序来排列,而不是一开始enum的顺序 Console.WriteLine("{0}", item.z); } Console.ReadKey(); } }