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

本文介绍了一个使用C#编写的简单函数,用于生成包含数字和小写字母的临时密码。通过两个Func委托来实现随机数生成,并利用Random类创建指定长度的密码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        .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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值