修改以下代码以在c#中生成13位唯一的随机数
public static string GenerateUniqueRandomNumbers()
{
Random generator = new Random();
String r = generator.Next(0, 1000000).ToString("D6");
if (r.Distinct().Count() == 1)
{
r = GenerateUniqueRandomNumbers();
}
return r;
}
答案 0 :(得分:0)
格式错误的问题
如果您的问题是maxValue不能包含13位数字,则快速的解决方法是将2个字符串连接起来
String r = generator.Next(0, 1000000).ToString("D6");
r += generator.Next(0, 10000000).ToString("D7");
答案 1 :(得分:0)
对于13位数字,我们需要long变量,但是Random.Next方法不支持long dataType,它仅支持Integer数据类型。因此,我们必须做一些棘手的事情。
检查以下代码以生成生成13位数字。
Random generator = new Random();
String r = generator.Next(0, 999999).ToString("D13");
注意:我已经使用ToString(“ D13”)来获取13位数字的值。
答案 2 :(得分:0)
public static string GenerateUniqueRandomNumbers()
{
Random generator = new Random();
String r = generator.Next(0, 1000000).ToString("D6");
r += generator.Next(0, 10000000).ToString("D7");
if (r.Distinct().Count() == 1)
{
r = GenerateUniqueRandomNumbers();
}
return r;
}