.NET Core支持標(biāo)準(zhǔn)的數(shù)字整數(shù)和浮點(diǎn)基元類型。 它還支持以下類型 -
System.Numerics.BigInteger是一個(gè)整數(shù)類型,沒有上限或下限。System.Numerics.Complex是一種表示復(fù)數(shù)的類型。System.Numerics命名空間中的一組支持單指令多數(shù)據(jù)(SIMD)的矢量類型。.NET Core支持從一個(gè)字節(jié)到八個(gè)字節(jié)的不同范圍的有符號(hào)和無(wú)符號(hào)整數(shù)。所有整數(shù)都是值類型。
下表列出了整體類型及其大小;
| 類型 | 有/無(wú)符號(hào) | 大小(位) | 最小值 | 最大值 |
|---|---|---|---|---|
| Byte | Unsigned | 1 | 0 | 255 |
| Int16 | Signed | 2 | ?32,768 | 32,767 |
| Int32 | Signed | 4 | ?2,147,483,648 | 2,147,483,647 |
| Int64 | Signed | 8 | ?9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
| SByte | Signed | 1 | -128 | 127 |
| UInt16 | Unsigned | 2 | 0 | 65,535 |
| UInt32 | Unsigned | 4 | 0 | 4,294,967,295 |
| UInt64 | Unsigned | 8 | 0 | 18,446,744,073,709,551,615 |
每個(gè)整型支持一組標(biāo)準(zhǔn)的算術(shù),比較,等式,顯式轉(zhuǎn)換和隱式轉(zhuǎn)換運(yùn)算符。
也可以使用System.BitConverter類來(lái)處理整數(shù)值中的各個(gè)位。
.NET Core包含三種基本浮點(diǎn)類型,如下表所示。
| 類型 | 大小(位) | 最小值 | 最大值 |
|---|---|---|---|
| Double | 8 | ?1.79769313486232e308 |
1.79769313486232e308 |
| Single | 4 | ?3.402823e38 |
3.402823e38 |
| Decimal | 16 | ?79,228,162,514,264,337,593,5 43,950,335 |
79,228,162,514,264,337,593,543,9 50,335 |
BitConverter類使用Double和Single值中的各個(gè)位。Decimal結(jié)構(gòu)有自己的方法,Decimal.GetBits和Decimal.Decimal(Int32()),用于處理十進(jìn)制值的各個(gè)位,以及它自己的一組方法來(lái)執(zhí)行一些額外的數(shù)學(xué)運(yùn)算。System.Numerics.BigInteger是一個(gè)不可變的類型,它表示一個(gè)理論值沒有上下限的任意大的整數(shù)。
BigInteger類型的方法與其他整型類型的方法非常類似。
System.Numerics.Complex類型表示復(fù)數(shù),即具有實(shí)數(shù)部分和虛數(shù)部分的數(shù)字Numerics命名空間包含一組用于.NET Core的啟用SIMD的矢量類型。.NET Core中支持SIMD的矢量類型包括以下內(nèi)容 -
System.Numerics.Vector2,System.Numerics.Vector3和System.Numerics.Vector4類型,它們是Single類型的2,3和4維矢量。Vector <T>結(jié)構(gòu)可創(chuàng)建任何基本數(shù)字類型的向量。基本數(shù)字類型包括System名稱空間中除Decimal以外的所有數(shù)字類型。System.Numerics.Matrix3×2,表示3×2矩陣; 和表示4×4矩陣的System.Numerics.Matrix4×4。System.Numerics.Plane類型和表示用于對(duì)三維物理旋轉(zhuǎn)進(jìn)行編碼的矢量的System.Numerics.Quaternion類型。