.NET Core поддерживает стандартные числовые интегральные и примитивы с плавающей точкой. Он также поддерживает следующие типы —
-
System.Numerics.BigInteger, который является целочисленным типом без верхней или нижней границы.
-
System.Numerics.Complex — это тип, представляющий комплексные числа.
-
Набор векторных типов с поддержкой нескольких инструкций (SIMD) в пространстве имен System.Numerics.
System.Numerics.BigInteger, который является целочисленным типом без верхней или нижней границы.
System.Numerics.Complex — это тип, представляющий комплексные числа.
Набор векторных типов с поддержкой нескольких инструкций (SIMD) в пространстве имен System.Numerics.
Интегральные типы
.NET Core поддерживает как целые числа со знаком, так и без знака разных диапазонов длиной от одного байта до восьми. Все целые числа являются типами значений.
В следующей таблице представлены целочисленные типы и их размеры;
Тип | Подпись / Без подписи | Размер (в байтах) | Минимальное значение | Максимальное значение |
---|---|---|---|---|
Байт | неподписанный | 1 | 0 | 255 |
Int16 | подписанный | 2 | -32768 | 32767 |
Int32 | подписанный | 4 | -2147483648 | 2147483647 |
Int64 | подписанный | 8 | -9.223.372.036.854.775.808 | 9.223.372.036.854.775.807 |
SByte | подписанный | 1 | -128 | 127 |
UInt16 | неподписанный | 2 | 0 | 65535 |
UInt32 | неподписанный | 4 | 0 | 4294967295 |
UInt64 | неподписанный | 8 | 0 | 18.446.744.073.709.551.615 |
Каждый интегральный тип поддерживает стандартный набор операторов арифметики, сравнения, равенства, явного преобразования и неявного преобразования.
Вы также можете работать с отдельными битами в целочисленном значении с помощью класса System.BitConverter.
Типы с плавающей точкой
.NET Core включает три примитивных типа с плавающей точкой, которые показаны в следующей таблице.
Каждый тип с плавающей точкой поддерживает стандартный набор операторов арифметики, сравнения, равенства, явного преобразования и неявного преобразования.
Вы также можете работать с отдельными битами в значениях Double и Single с помощью класса BitConverter.
Структура Decimal имеет свои собственные методы, Decimal.GetBits и Decimal.Decimal (Int32 ()), для работы с отдельными битами десятичного значения, а также свой собственный набор методов для выполнения некоторых дополнительных математических операций.
System.Numerics.BigInteger — неизменный тип, представляющий произвольно большое целое число, значение которого в теории не имеет верхних или нижних границ.
Методы типа BigInteger тесно параллельны методам других целочисленных типов.
Тип System.Numerics.Complex представляет собой комплексное число, то есть число с частью действительного числа и частью мнимого числа
Он поддерживает стандартный набор операторов арифметики, сравнения, равенства, явного преобразования и неявного преобразования, а также математических, алгебраических и тригонометрических методов.
Пространство имен Numerics включает набор векторных типов с поддержкой SIMD для .NET Core.
SIMD позволяет распараллеливать некоторые операции на аппаратном уровне, что приводит к значительному повышению производительности математических, научных и графических приложений, которые выполняют вычисления над векторами.
Векторные типы с поддержкой SIMD в .NET Core включают следующее:
Типы System.Numerics.Vector2, System.Numerics.Vector3 и System.Numerics.Vector4, которые представляют собой 2, 3 и 4-мерные векторы типа Single.
Структура Vector <T>, которая позволяет создавать вектор любого примитивного числового типа. Примитивные числовые типы включают все числовые типы в пространстве имен System, кроме Decimal.
Два типа матрицы, System.Numerics.Matrix3 × 2, которая представляет матрицу 3 × 2; и System.Numerics.Matrix4 × 4, который представляет матрицу 4 × 4.
Тип System.Numerics.Plane, представляющий трехмерную плоскость, и тип System.Numerics.Quaternion, представляющий вектор, который используется для кодирования трехмерных физических вращений.