c# – 选择随机字符

前端之家收集整理的这篇文章主要介绍了c# – 选择随机字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些字符:
  1. chars = "$%#@!*abcdefghijklmnopqrstuvwxyz1234567890?;:ABCDEFGHIJKLMNOPQRSTUVWXYZ^&".tocharArray();

现在我正在寻找一种从这些返回随机字符的方法.

我发现一个可能有用的代码

  1. static Random random = new Random();
  2. public static char GetLetter()
  3. {
  4. // This method returns a random lowercase letter
  5. // ... Between 'a' and 'z' inclusize.
  6. int num = random.Next(0,26); // Zero to 25
  7. char let = (char)('a' + num);
  8. return let;
  9. }

这个代码给我一个随机的字母形式,但只返回小写字母

解决方法

你几乎在那里 – 你想从一个字符串返回一个随机元素,所以你只需要在字符串的长度范围内生成一个随机数:
  1. public static char GetRandomCharacter(string text,Random rng)
  2. {
  3. int index = rng.Next(text.Length);
  4. return text[index];
  5. }

我建议不要使用类型为Random的静态变量,而不用任何锁定,顺便说一下 – Random不是线程安全的.有关更多详细信息(和解决方法),请参阅我的article on random numbers.

猜你在找的C#相关文章