如何从一个列表随机出若干个元素 | 您所在的位置:网站首页 › 随机取列表中元素 › 如何从一个列表随机出若干个元素 |
如何从一个列表随机出若干个元素
引言:每次想从一个列表随机出若干个(数目大于1)元素时,我都按照习惯对这个列表做个拷贝,然后随机一个,然后把这个移除,然后再随机,这样持续下去就可以得到一个随机列表。但接下来我不想这样干...... 老思路:1:对这个列表进行拷贝 2:然后针对这个拷贝对列表随机出一个元素 3:将这个元素从拷贝的列表移除 4:重复二,三 下面是针对这个思路的实现: static public List Randoms_Old(this List list,int count = 1) { if (count == 1) { return new List() { list.Random() }; } if (count > list.Count) { Debug.LogError("find the count > list count. not enough!!!!!"); } List result = new List(); List copyed_list = new List(list); for(int i=0;iperiod) { Debug.LogError("find the count > list count. not enough!!!!!"); } int gap = period / count; int start_index = UnityEngine.Random.Range(0,period); List result = new List(); for(int i=0;i |
CopyRight 2018-2019 实验室设备网 版权所有 |