Random.NextBytes Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
| Nazwa | Opis |
|---|---|
| NextBytes(Span<Byte>) |
Wypełnia elementy określonego zakresu bajtów liczbami losowymi. |
| NextBytes(Byte[]) |
Wypełnia elementy określonej tablicy bajtów liczbami losowymi. |
NextBytes(Span<Byte>)
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
Wypełnia elementy określonego zakresu bajtów liczbami losowymi.
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))
Parametry
Uwagi
Każdy element zakresu bajtów jest ustawiony na losową liczbę większą lub równą 0 i mniejszą niż lub równą MaxValue.
Dotyczy
NextBytes(Byte[])
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
- Źródło:
- Random.cs
Wypełnia elementy określonej tablicy bajtów liczbami losowymi.
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())
Parametry
- buffer
- Byte[]
Tablica, która ma być wypełniona liczbami losowymi.
Wyjątki
Parametr buffer ma wartość null.
Przykłady
W poniższym przykładzie pokazano, jak za pomocą NextBytes metody wypełnić tablicę bajtów losowymi wartościami bajtów.
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
Uwagi
Każdy element tablicy bajtów jest ustawiony na losową liczbę większą lub równą 0, a mniejszą lub równą MaxValue.
Aby na przykład wygenerować kryptograficznie zabezpieczony losowy numer odpowiedni do utworzenia losowego hasła, użyj metody takiej jak RNGCryptoServiceProvider.GetBytes.
Notatki dotyczące dziedziczenia
Począwszy od .NET Framework w wersji 2.0, jeśli klasa pochodzi z Random i przesłania metodę Sample(), rozkład dostarczony przez implementację klasy pochodnej metody Sample() nie jest używany w wywołaniach do implementacji klasy bazowej metody NextBytes(Byte[]). Zamiast tego używany jest jednolity rozkład zwracany przez klasę bazową Random . To zachowanie poprawia ogólną wydajność Random klasy. Aby zmodyfikować to zachowanie w celu wywołania Sample() metody w klasie pochodnej, należy również zastąpić metodę NextBytes(Byte[]) .