在c#中生成13位唯一的随机数

问题描述 投票:-6回答:2

修改以下代码以在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;
    }
c#
2个回答
0
投票

格式错误的问题

如果您的问题是maxValue不能包含13位数字,则可以将2个字符串连接起来作为一种快速的解决方法

    String r = generator.Next(0, 1000000).ToString("D6");
    r += generator.Next(0, 10000000).ToString("D7");

0
投票

对于13位数字,我们需要long变量,但是Random.Next方法不支持long dataType,它仅支持Integer数据类型。因此,我们必须做一些棘手的事情。

检查下面的代码以生成生成13位数字。

    Random generator = new Random();
    String r = generator.Next(0, 999999).ToString("D13");

注意:我已经使用ToString(“ D13”)获得13位数字的值。

© www.soinside.com 2019 - 2024. All rights reserved.