修改以下代码以在 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;
}
非常畸形的问题
如果你的问题是,maxValue 不能有 13 位,一个快速的解决方法可以连接 2 个字符串
String r = generator.Next(0, 1000000).ToString("D6");
r += generator.Next(0, 10000000).ToString("D7");
对于 13 位数字,我们需要 long 变量,但 Random.Next 方法不支持 long dataType,它只支持 Integer 数据类型。因此,我们必须做一些棘手的事情。
检查下面的代码生成生成 13 位数。
Random generator = new Random();
String r = generator.Next(0, 999999).ToString("D13");
注意:我已经使用 ToString(“D13”)来获取 13 位数的值。
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;
}
Random generator = new Random();
string s = "380003562";
s += generator.Next(0, 0000000).ToString("D"+(13-s.Length).ToString());
使用此代码,如果您使用的是现有数字,则可以快速将其转换为 13 位数字或所需的任何数字。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(80条)