Random.NextBytes Метод

Определение

Перегрузки

Имя Описание
NextBytes(Byte[])

Заполняет элементы указанного массива байтов случайными числами.

NextBytes(Span<Byte>)

Заполняет элементы указанного диапазона байтов случайными числами.

NextBytes(Byte[])

Исходный код:
Random.cs
Исходный код:
Random.cs
Исходный код:
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 метод для заполнения массива байтов случайными значениями байтов.

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[]) классе, необходимо также переопределить метод.

См. также раздел

Применяется к

NextBytes(Span<Byte>)

Исходный код:
Random.cs
Исходный код:
Random.cs
Исходный код:
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))

Параметры

buffer
Span<Byte>

Массив, заполненный случайными числами.

Комментарии

Каждый элемент диапазона байтов имеет случайное число больше или равно 0 и меньше или равно MaxValue.

Применяется к