Freigeben über


Random.NextBytes Methode

Definition

Überlädt

NextBytes(Span<Byte>)

Füllt die Elemente einer festgelegten Bytespanne mit zufälligen Zahlen.

NextBytes(Byte[])

Füllt die Elemente eines angegebenen Bytearrays mit Zufallszahlen.

NextBytes(Span<Byte>)

Quelle:
Random.cs
Quelle:
Random.cs
Quelle:
Random.cs

Füllt die Elemente einer festgelegten Bytespanne mit zufälligen Zahlen.

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))

Parameter

buffer
Span<Byte>

Das Array, das mit zufälligen Zahlen aufgefüllt wird.

Hinweise

Jedes Element der Bytespanne ist auf eine Zufallszahl größer oder gleich 0 und kleiner als oder gleich MaxValuefestgelegt.

Gilt für:

NextBytes(Byte[])

Quelle:
Random.cs
Quelle:
Random.cs
Quelle:
Random.cs

Füllt die Elemente eines angegebenen Bytearrays mit Zufallszahlen.

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())

Parameter

buffer
Byte[]

Das Array, das mit zufälligen Zahlen aufgefüllt wird.

Ausnahmen

buffer ist null.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie Sie die NextBytes -Methode verwenden, um ein Bytearray mit zufälligen Bytewerten zu füllen.

#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

Hinweise

Jedes Element des Bytesarrays ist auf eine Zufallszahl größer oder gleich 0 und kleiner als oder gleich MaxValuefestgelegt.

Um beispielsweise eine kryptografisch gesicherte Zufallszahl zu generieren, die zum Erstellen eines zufälligen Kennworts geeignet ist, verwenden Sie eine Methode wie RNGCryptoServiceProvider.GetBytes.

Hinweise für Vererber

Ab der .NET Framework Version 2.0 wird die von der abgeleiteten Klassenimplementierung Sample() der -Methode bereitgestellte Verteilung nicht in Aufrufen der Basisklassenimplementierung der NextBytes(Byte[]) Methode verwendet, wenn Sie eine Klasse von Random der Methode ableiten und überschreibenSample(). Stattdessen wird die von der Basisklasse Random zurückgegebene Uniformverteilung verwendet. Dieses Verhalten verbessert die Gesamtleistung der Random Klasse. Um dieses Verhalten zum Aufrufen der Sample() Methode in der abgeleiteten Klasse zu ändern, müssen Sie auch die NextBytes(Byte[]) -Methode überschreiben.

Weitere Informationen

Gilt für: