Прочитать на английском

Поделиться через


IBinaryInteger<TSelf> Интерфейс

Определение

Определяет целый тип, представленный в формате base-2.

public interface IBinaryInteger<TSelf> : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, System.Numerics.IAdditionOperators<TSelf,TSelf,TSelf>, System.Numerics.IAdditiveIdentity<TSelf,TSelf>, System.Numerics.IBinaryNumber<TSelf>, System.Numerics.IBitwiseOperators<TSelf,TSelf,TSelf>, System.Numerics.IComparisonOperators<TSelf,TSelf,bool>, System.Numerics.IDecrementOperators<TSelf>, System.Numerics.IDivisionOperators<TSelf,TSelf,TSelf>, System.Numerics.IEqualityOperators<TSelf,TSelf,bool>, System.Numerics.IIncrementOperators<TSelf>, System.Numerics.IModulusOperators<TSelf,TSelf,TSelf>, System.Numerics.IMultiplicativeIdentity<TSelf,TSelf>, System.Numerics.IMultiplyOperators<TSelf,TSelf,TSelf>, System.Numerics.INumber<TSelf>, System.Numerics.INumberBase<TSelf>, System.Numerics.IShiftOperators<TSelf,int,TSelf>, System.Numerics.ISubtractionOperators<TSelf,TSelf,TSelf>, System.Numerics.IUnaryNegationOperators<TSelf,TSelf>, System.Numerics.IUnaryPlusOperators<TSelf,TSelf> where TSelf : IBinaryInteger<TSelf>
public interface IBinaryInteger<TSelf> : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, IUtf8SpanParsable<TSelf>, System.Numerics.IAdditionOperators<TSelf,TSelf,TSelf>, System.Numerics.IAdditiveIdentity<TSelf,TSelf>, System.Numerics.IBinaryNumber<TSelf>, System.Numerics.IBitwiseOperators<TSelf,TSelf,TSelf>, System.Numerics.IComparisonOperators<TSelf,TSelf,bool>, System.Numerics.IDecrementOperators<TSelf>, System.Numerics.IDivisionOperators<TSelf,TSelf,TSelf>, System.Numerics.IEqualityOperators<TSelf,TSelf,bool>, System.Numerics.IIncrementOperators<TSelf>, System.Numerics.IModulusOperators<TSelf,TSelf,TSelf>, System.Numerics.IMultiplicativeIdentity<TSelf,TSelf>, System.Numerics.IMultiplyOperators<TSelf,TSelf,TSelf>, System.Numerics.INumber<TSelf>, System.Numerics.INumberBase<TSelf>, System.Numerics.IShiftOperators<TSelf,int,TSelf>, System.Numerics.ISubtractionOperators<TSelf,TSelf,TSelf>, System.Numerics.IUnaryNegationOperators<TSelf,TSelf>, System.Numerics.IUnaryPlusOperators<TSelf,TSelf> where TSelf : IBinaryInteger<TSelf>

Параметры типа

TSelf

Тип, реализующий интерфейс.

Производный
Реализации

Методы

CompareTo(Object)

Сравнивает текущий экземпляр с другим объектом того же типа и возвращает целое число, указывающее, предшествует ли текущий экземпляр, следует или происходит в той же позиции в порядке сортировки, что и другой объект.

(Унаследовано от IComparable)
CompareTo(T)

Сравнивает текущий экземпляр с другим объектом того же типа и возвращает целое число, указывающее, предшествует ли текущий экземпляр, следует или происходит в той же позиции в порядке сортировки, что и другой объект.

(Унаследовано от IComparable<T>)
DivRem(TSelf, TSelf)

Вычисляет цитент и оставшуюся часть двух значений.

Equals(T)

Указывает, равен ли текущий объект другому объекту того же типа.

(Унаследовано от IEquatable<T>)
GetByteCount()

Возвращает количество байтов, которые будут записываться в составе TryWriteLittleEndian(Span<Byte>, Int32).

GetShortestBitLength()

Возвращает длину (в битах) в кратчайшем представлении текущего значения.

LeadingZeroCount(TSelf)

Вычисляет число начальных нулевых битов в значении.

PopCount(TSelf)

Вычисляет количество битов, заданных в значении.

ReadBigEndian(Byte[], Boolean)

Считывает число дополнения двух из заданного массива в формате big-endian и преобразует его в экземпляр текущего типа.

ReadBigEndian(Byte[], Int32, Boolean)

Считывает число дополнения двух из заданного массива в формате big-endian и преобразует его в экземпляр текущего типа.

ReadBigEndian(ReadOnlySpan<Byte>, Boolean)

Считывает число дополнения двух из заданного диапазона в формате big-endian и преобразует его в экземпляр текущего типа.

ReadLittleEndian(Byte[], Boolean)

Считывает двух дополнительный номер из заданного массива в маленьком формате и преобразует его в экземпляр текущего типа.

ReadLittleEndian(Byte[], Int32, Boolean)

Считывает двух дополнительный номер из заданного массива в маленьком формате и преобразует его в экземпляр текущего типа.

ReadLittleEndian(ReadOnlySpan<Byte>, Boolean)

Считывает число дополнения двух из заданного диапазона в маленьком формате и преобразует его в экземпляр текущего типа.

RotateLeft(TSelf, Int32)

Поворот значения влево на заданное значение.

RotateRight(TSelf, Int32)

Поворот значения вправо по заданному количеству.

ToString(String, IFormatProvider)

Форматирует значение текущего экземпляра с помощью указанного формата.

(Унаследовано от IFormattable)
TrailingZeroCount(TSelf)

Вычисляет число конечных нулевых битов в значении.

TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Пытается отформатировать значение текущего экземпляра как UTF-8 в предоставленный диапазон байтов.

(Унаследовано от IUtf8SpanFormattable)
TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Пытается отформатировать значение текущего экземпляра в предоставленный диапазон символов.

(Унаследовано от ISpanFormattable)
TryReadBigEndian(ReadOnlySpan<Byte>, Boolean, TSelf)

Пытается считывать номер дополнения двух из диапазона в формате big-endian и преобразовать его в экземпляр текущего типа.

TryReadLittleEndian(ReadOnlySpan<Byte>, Boolean, TSelf)

Пытается считывать номер дополнения двух из диапазона в маленьком формате и преобразовать его в экземпляр текущего типа.

TryWriteBigEndian(Span<Byte>, Int32)

Пытается записать текущее значение в формате big-endian в заданный диапазон.

TryWriteLittleEndian(Span<Byte>, Int32)

Пытается написать текущее значение в маленьком формате в заданном диапазоне.

WriteBigEndian(Byte[])

Записывает текущее значение в формате big-endian в заданный массив.

WriteBigEndian(Byte[], Int32)

Записывает текущее значение в формате big-endian в заданный массив.

WriteBigEndian(Span<Byte>)

Записывает текущее значение в формате big-endian в заданный диапазон.

WriteLittleEndian(Byte[])

Записывает текущее значение в маленьком формате в заданный массив.

WriteLittleEndian(Byte[], Int32)

Записывает текущее значение в маленьком формате в указанный массив, начиная с указанного индекса.

WriteLittleEndian(Span<Byte>)

Записывает текущее значение в маленьком формате в заданный диапазон.

Явные реализации интерфейса

IUtf8SpanFormattable.TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Пытается отформатировать значение текущего экземпляра как UTF-8 в предоставленный диапазон байтов.

(Унаследовано от INumberBase<TSelf>)
IUtf8SpanParsable<TSelf>.Parse(ReadOnlySpan<Byte>, IFormatProvider)

Анализирует диапазон символов UTF-8 в значение.

(Унаследовано от INumberBase<TSelf>)
IUtf8SpanParsable<TSelf>.TryParse(ReadOnlySpan<Byte>, IFormatProvider, TSelf)

Пытается проанализировать диапазон символов UTF-8 в значение.

(Унаследовано от INumberBase<TSelf>)

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

Продукт Версии
.NET 7, 8, 9