英語で読む

次の方法で共有


Random.NextBytes メソッド

定義

オーバーロード

NextBytes(Span<Byte>)

指定したバイト範囲の要素に乱数を格納します。

NextBytes(Byte[])

指定したバイト配列の要素に乱数を格納します。

NextBytes(Span<Byte>)

ソース:
Random.cs
ソース:
Random.cs
ソース:
Random.cs

指定したバイト範囲の要素に乱数を格納します。

C#
public virtual void NextBytes(Span<byte> buffer);

パラメーター

buffer
Span<Byte>

乱数が格納される配列。

注釈

バイトスパンの各要素は、0 以上で、 以下の乱数に MaxValue設定されます。

適用対象

.NET 10 およびその他のバージョン
製品 バージョン
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Standard 2.1

NextBytes(Byte[])

ソース:
Random.cs
ソース:
Random.cs
ソース:
Random.cs

指定したバイト配列の要素に乱数を格納します。

C#
public virtual void NextBytes(byte[] buffer);

パラメーター

buffer
Byte[]

乱数が格納される配列。

例外

buffernullです。

次の例では、 メソッドを使用 NextBytes してバイト配列にランダムなバイト値を入力する方法を示します。

C#
Random rnd = new Random();
Byte[] b = new Byte[10];
rnd.NextBytes(b);
Console.WriteLine("The Random bytes are: ");
for (int i = 0; i <= b.GetUpperBound(0); i++)
    Console.WriteLine("{0}: {1}", i, b[i]);

// The example displays output similar to the following:
//       The Random bytes are:
//       0: 131
//       1: 96
//       2: 226
//       3: 213
//       4: 176
//       5: 208
//       6: 99
//       7: 89
//       8: 226
//       9: 194

注釈

バイト配列の各要素は、0 以上で、 以下の乱数に MaxValue設定されます。

たとえば、ランダム パスワードの作成に適した暗号で保護された乱数を生成するには、 などの RNGCryptoServiceProvider.GetBytesメソッドを使用します。

注意 (継承者)

.NET Framework バージョン 2.0 以降では、 からクラスRandomを派生させ、 メソッドをオーバーライドSample()すると、 メソッドの派生クラス実装によって提供されるディストリビューションは、 メソッドのSample()NextBytes(Byte[])基底クラス実装の呼び出しでは使用されません。 代わりに、基底 Random クラスによって返される均一分布が使用されます。 この動作により、 クラスの全体的なパフォーマンスが Random 向上します。 派生クラスで メソッドを Sample() 呼び出すようにこの動作を変更するには、 メソッドもオーバーライドする NextBytes(Byte[]) 必要があります。

こちらもご覧ください

適用対象

.NET 10 およびその他のバージョン
製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0