排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256
50010702506256
欢迎加群交流技术
分类:
随笔
可以用来做随机分组,思路就是先参数一个不重复的随机数列表,然后在根据几个一组进行分组即可。
例如如下需求:写段代码来让一个班的人随机分几个小队,比如这个班21个人,3个人一队
参考代码如下:
public void Index()
{
Response.ContentType = "text/html;charset=UTF-8";
List<string> namelist = names.Split(',').ToList();
//先随机参数不重复的随机数
Random random = new Random();
List<int> poilist = new List<int>();
for (int i = 0; i < namelist.Count; i++)
{
int randomNum = random.Next(0, namelist.Count);
if (poilist.Contains(randomNum))
{
i--;
continue;
}
poilist.Add(randomNum);
}
//根据数字分组(3个一小组),然后把结果在用个双循环输出
foreach (List<int> itemList in poilist.GroupByNum(3))
{
foreach (int item in itemList)
{
Response.Body.Write(System.Text.Encoding.UTF8.GetBytes(namelist[item] + " "));
}
Response.Body.Write(System.Text.Encoding.UTF8.GetBytes("<br/>"));
}
}GroupByNum是个根据数组分组的扩展方法,自己封装的
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)
评价