先给一个java的链接,C#的方法类似:
https://www.cnblogs.com/happyday56/p/5163264.html
类似地,一定会有相对应的C#的方式,链接如下:
https://www.jb51.net/article/66255.htm
我自己整理出一个自认为比较简单的方式:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MathTool : MonoBehaviour
{
/// <summary>
/// Gets the random numbers.
/// </summary>
/// <returns>The random numbers.</returns>
/// <param name="min">Minimum.</param>
/// <param name="max">Max.</param>
/// <param name="count">Count.</param>
public static int[] GetRandomNumbersArray(int min, int max, int count)
{
if (count > (max - min + 1) || max < min) {
return null;
}
int[] result = new int[count];
HashSet<int> set = new HashSet<int>();
while (set.Count < count)
{
set.Add(UnityEngine.Random.Range(min, max + 1));
}
set.CopyTo(result);
return result;
}
/// <summary>
/// Gets the random numbers set.
/// </summary>
/// <returns>The random numbers set.</returns>
/// <param name="min">Minimum.</param>
/// <param name="max">Max.</param>
/// <param name="count">Count.</param>
public static HashSet<int> GetRandomNumbersSet(int min, int max, int count)
{
if (count > (max - min + 1) || max < min) {
return null;
}
HashSet<int> set = new HashSet<int>();
while (set.Count < count)
{
set.Add(UnityEngine.Random.Range(min, max + 1));
}
return set;
}
}
最后
以上就是贪玩香水最近收集整理的关于C#从给定范围内选择N个不重复随机数的方法的全部内容,更多相关C#从给定范围内选择N个不重复随机数内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复