C#获取不同的随机数

public static int GetRandomRangeNoRe2(int x, int y, int[] array = null)
    {

        if (array == null)
        {
            return UnityEngine.Random.Range(x, y);
        }
        else
        {
            List<int> list = new List<int>();
            for (int i = x; i < y; i++)
            {
                list.Add(i);
            }
            List<int> aList = new List<int>(array);
            list.RemoveAll(m => m == aList.Find(n => n == m));
            int z = UnityEngine.Random.Range(0, list.Count);

            return list[z];
        }
    }

没啥技术含量,实际就是把要过滤的数也传进去。

然后在区间内,过滤掉对应的数,再随机一次。

这个只处理int型。

posted @ 2022-08-18 14:46  威少小二orz  阅读(119)  评论(0编辑  收藏  举报