• Func委托应用之生成简单随机密码


            .net framework 3.5 中提供了强大的委托类型Func<T, TResult>,如果您不清楚可以先参考:MSDN

    下面来看这个小函数生成简单随机密码:

       1:    public string CreateTemporaryPassword(int length)
       2:          {
       3:              Func<Random, char> randomNumber = rnd => (char)rnd.Next(48, 58);
       4:              Func<Random, char> randomCharacter = rnd => (char)rnd.Next(97, 123);
       5:              var funcArray = new[] { randomNumber, randomCharacter };
       6:              var chars = new char[length];
       7:   
       8:              Random random = new Random();
       9:              for (int i = 0; i < length; i++)
      10:              {
      11:                  var index = random.Next(0, funcArray.Length);
      12:                  chars[i] = funcArray[index](random);
      13:              }
      14:   
      15:              return new string(chars);
      16:          }

    UnitTest:

       1:          [Test]
       2:          public void TestSimpleWay()
       3:          {
       4:              Assert.AreEqual(8,CreateTemporaryPassword(8).Length);
       5:          }

            很简单的代码,希望对您有帮助!

            您可能对下面这篇文章感兴趣:

            用CSharp生成强密码


    作者:Petter Liu
    出处:http://www.cnblogs.com/wintersun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    该文章也同时发布在我的独立博客中-Petter Liu Blog

  • 相关阅读:
    [2019.2.24]BZOJ4591 [Shoi2015]超能粒子炮·改
    [2019.2.13]BZOJ4318 OSU!
    [2019.1.17]BZOJ1066 [SCOI2007]蜥蜴
    [2019.1.15]BZOJ2152 聪聪可可
    [2019.1.17]BZOJ3993 [SDOI2015]星际战争
    [2019.1.14]BZOJ2005 [Noi2010]能量采集
    [2019.1.10]BZOJ1853 [Scoi2010]幸运数字
    [2019.1.9]BZOJ2299 [HAOI2011]向量
    yyb博客的几道神仙题
    CQOI2018异或序列 [莫队]
  • 原文地址:https://www.cnblogs.com/wintersun/p/1775238.html
Copyright © 2020-2023  润新知