silverlight 2 Random 随机数解决方案

时间:2022-04-22
本文章向大家介绍silverlight 2 Random 随机数解决方案,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

using System; using System.Security.Cryptography; public class RNG     { private static RNGCryptoServiceProvider rngp = new RNGCryptoServiceProvider(); private static byte[] rb = new byte[4]; /// <summary> /// 产生一个非负数的乱数 /// </summary> public static int Next()         {             rngp.GetBytes(rb); int value = BitConverter.ToInt32(rb, 0); if (value < 0) value = -value; return value;         } /// <summary> /// 产生一个非负数且最大值在 max 以下的乱数 /// </summary> /// <param name="max">最大值</param> public static int Next(int max)         {             rngp.GetBytes(rb); int value = BitConverter.ToInt32(rb, 0);             value = value % (max + 1); if (value < 0) value = -value; return value;         } /// <summary> /// 产生一个非负数且最小值在 min 以上最大值在 max 以下的乱数 /// </summary> /// <param name="min">最小值</param> /// <param name="max">最大值</param> public static int Next(int min, int max)         { int value = Next(max - min) + min; return value;         }     }