-4

だから私はこれを持っています

Random random1 = new Random();
int intrandom1 = random1.Next();

.Nextの後にずっと置きたいです。それ、どうやったら出来るの?intのみを受け入れます。

4

2 に答える 2

3

最初のアイデア: 64 ビット整数の long は、2 つの 32 ビット整数の組み合わせであるため、次を使用できます。

((long)random1.Next() << 32)  | random1.Next()

多分

((long)random1.Next() <<< 32)  | random1.Next()

Java (?) を使用していて、符号なしシフトが必要な場合

編集: Java のようには見えません。Java にはそのための random1.nextLong() があります。もしかしてC#?私はそれを知りません

于 2012-12-28T18:13:22.883 に答える
0

単純なリンクリストを使用して、任意の長い数を生成できます。リストのすべてのノードがランダムに生成された数値を格納でき、関数がそのリストを1つの数値のように読み取ることができると想像してみてください。このようなアルゴリズムを使用すると、任意の長い乱数を取得できます。

于 2012-12-28T18:19:00.260 に答える