生成随机数

本文介绍了两种生成包含数字及大小写字母的随机字符串的方法。方法一使用了System.Random类生成随机数,并通过switch语句拼接字符。方法二则通过创建包含所有可能字符的字符串池,利用随机数选取字符来生成随机字符串。

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

 
//方法一
public string getRandom() 
    { 
        System.Random r 
= new System.Random(); 

        
string randomNumber = null
        
int Number; 
        
for (int i = 0; i  < 5; i++
        { 
            Number 
= r.Next(03); 
            
switch (Number) 
            { 
                
case 0
                    randomNumber 
+= System.Convert.ToChar(r.Next(4857)).ToString();  //0-9 
                    break
                
case 1
                    randomNumber 
+= System.Convert.ToChar(r.Next(6590)).ToString(); //A--Z 
                    break
                
case 2
                    randomNumber 
+= System.Convert.ToChar(r.Next(97122)).ToString(); //a-z 
                    break
            } 
        } 
        
return randomNumber.ToString(); 

    }

 

 

//方法二 
private string RndNum(int VcodeNum) 
    { 
        
string Vchar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,FG,H,I,J,K,L,M,N,O,P,Q" + 
                    
",R,S,T,U,V,W,X,Y,Z"
        
string[] VcArray = Vchar.Split(new Char[] {  '' });//拆分成数组 
        string VNum = ""
        
int temp = -1;//记录上次随机数值,尽量避避免生产几个一样的随机数 

        Random rand 
= new Random(); 
        
//采用一个简单的算法以保证生成随机数的不同 
        for (int i = 1; i  < VcodeNum + 1; i++
        { 
            
if (temp != -1
            { 
                rand 
= new Random(i * temp * unchecked((int)DateTime.Now.Ticks)); 
            } 

            
int t = rand.Next(VcArray.Length - 1); 
            
if (temp != -1 && temp == t) 
            { 
                
return RndNum(VcodeNum); 
            } 
            temp 
= t; 
            VNum 
+= VcArray[t]; 
        } 
        
return VNum.Substring(0, VcodeNum); 
    } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值