实现代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace day01
{
class RandomString
{
int time;
public void GetRandomString(int num)
{
string[] randomString = new string[num];
for (int i = 0; i < num; i++)
{
randomString[i] = CreateRandomString();
Console.WriteLine("第{0}个随机字符串:{1}", i + 1, randomString[i]);
}
}
public string CreateRandomString()
{
int number;
char ch1;
string randomStr = null;
//为了让每次的随机数不同
this.time++;
long num2 = DateTime.Now.Ticks + this.time;
Random random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> this.time)));
int temp = random.Next();
//如果随机的长度为0,设为1
if (temp%11==0)
{
temp = 1;
}
//长度为1-10位,根据随机数字的奇偶性来确定是字母还是数字
for (int j = 0; j < temp % 11; j++)
{
number = random.Next();
if (number % 2 == 0)
ch1 = (char)('0' + (char)(number % 10));
else
ch1 = (char)('A' + (char)(number % 26));
randomStr += ch1.ToString();
}
return randomStr;
}
}
}
测试用例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace day01
{
class Test
{
static void Main(string[] args)
{
RandomString random = new RandomString();
random.GetRandomString(10);
Console.ReadKey();
}
}
}
运行结果: