2

我在 JS 中得到了这个函数

var number = Math.random() + "";
var r = number * 10000000000000;

我需要 C# 中 100% 相同的函数,因为我是 C# 新手1 与此类似(0.7740926130209118, 0.6105941028799862),然后我想乘以 10000000000000,我们得到类似“2647182801738.3813 <---这就是我需要的东西。

我考虑过创建一个 13 位随机数和另一个 4 位随机数,然后将其添加为 13 位 + 。+ 4 位数。这当然不理想,但我也遇到了问题。

Random random = new Random(); int randomNumber = random.Next(1000000000000, 9999999999999);

会给我错误int,我理解的是我应该使用long什么?但是当我更改它时intlong它仍然看起来像随机函数本身是 INT?好吧,我已经对我在网上找到的内容感到困惑,所以如果你能帮助解决这个问题并解释它是如何工作的,那就太好了。

4

3 回答 3

5

尚未测试,但听起来您需要:

 Random random = new Random();

 long r = (long)(random.NextDouble() * 10000000000000);
于 2012-09-02T19:52:44.120 回答
2

如果您想要一个确切的端口,请选择以下内容:

var number = (new Random()).NextDouble() * 10000000000000;
于 2012-09-02T19:52:22.227 回答
0

C#也有一个var:)

using System;

public class Test
{
        public static void Main()
        {
           Random randObj = new Random();
           var number = randObj.NextDouble( ) * 10000000000000;
           Console.WriteLine( number ); 
        }
}

...

input: no
output:
6426401076105.61
于 2012-09-02T20:00:29.013 回答