Random.NextBytes メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
NextBytes(Span<Byte>) |
指定したバイト範囲の要素に乱数を格納します。 |
NextBytes(Byte[]) |
指定したバイト配列の要素に乱数を格納します。 |
NextBytes(Span<Byte>)
- ソース:
- Random.cs
- ソース:
- Random.cs
- ソース:
- Random.cs
指定したバイト範囲の要素に乱数を格納します。
public:
virtual void NextBytes(Span<System::Byte> buffer);
public virtual void NextBytes (Span<byte> buffer);
abstract member NextBytes : Span<byte> -> unit
override this.NextBytes : Span<byte> -> unit
Public Overridable Sub NextBytes (buffer As Span(Of Byte))
パラメーター
注釈
バイトスパンの各要素は、0 以上で、 以下の乱数に MaxValue設定されます。
適用対象
NextBytes(Byte[])
- ソース:
- Random.cs
- ソース:
- Random.cs
- ソース:
- Random.cs
指定したバイト配列の要素に乱数を格納します。
public:
virtual void NextBytes(cli::array <System::Byte> ^ buffer);
public virtual void NextBytes (byte[] buffer);
abstract member NextBytes : byte[] -> unit
override this.NextBytes : byte[] -> unit
Public Overridable Sub NextBytes (buffer As Byte())
パラメーター
- buffer
- Byte[]
乱数が格納される配列。
例外
buffer
が null
です。
例
次の例では、 メソッドを使用 NextBytes してバイト配列にランダムなバイト値を入力する方法を示します。
#using <System.DLL>
using namespace System;
void main()
{
Random^ rnd = gcnew Random;
array<unsigned char>^b = gcnew array<unsigned char>(10);
rnd->NextBytes( b );
Console::WriteLine("The Random bytes are:");
for ( int i = 0; i < 10; 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
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
Public Class Example
Public Shared Sub Main()
Dim rnd As New Random()
Dim b(9) As Byte
rnd.NextBytes(b)
Console.WriteLine("The Random bytes are: ")
For i As Integer = 0 To b.GetUpperBound(0)
Console.WriteLine("{0}: {1}", i, b(i))
Next
End Sub
End Class
' 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