public CaseModel Func_CrazyGrabRedPackage() { return(new CaseModel() { NameSign = @"疯狂抢红包", ExeEvent = () => { Func <Prize> CalcMethod = () => { Prize[] list = Prize.Get_PrizeList(); for (int i = 0; i < list.Length; i++) { Prize item = list[i]; if (RandomData.GetInt(0, 9 + 1) <= item.Rate) { return item; } } return null; }; int sum = 100 * 10000; Dictionary <string, int> dic = new Dictionary <string, int>() { { @"空", 0 }, }; foreach (Prize item in Prize.Get_PrizeList()) { dic.Add(item.Name, 0); } for (int i = 0; i < sum; i++) { Prize prize = CalcMethod(); if (CheckData.IsObjectNull(prize)) { dic[@"空"] += 1; continue; } dic[prize.Name] += 1; } Console.WriteLine("测试次数: {0} 次", sum); foreach (KeyValuePair <string, int> kv in dic) { double rate = (double)kv.Value / (double)sum * 100d; Console.WriteLine("{0}: {1}次 比例: {2}%", kv.Key, kv.Value, rate); } return true; }, }); }