浮點類型
數學中的實數不僅包括整數,而且包括小數。小數在C#中采用兩種數據類型來表示:單精度(float)和雙精度(double)。它們的差別在於取值范圍和精度不同。計算機對浮點數的運算速度大大低於對整數的運算。在對精度要求不是很高的浮點計算中,我們可以采用float型,而采用double型獲得的結果將更為准確。當然,如果在程序中大量使用雙精度類浮點數,將會占用更多的內存單元,而且計算機的處理任務也將更加繁重。
●單精度:取值范圍在正負 之間,精度為7位數。
●雙精度:取值范圍在正負 之間,精度為15到16位數。
十進制類型
C#還專門為我們定義了一種十進制類型(decimal),主要用於方便我們在金融和貨幣方面的計算。在現代的企業應用程序中,不可避免地要進行大量的這方面的計算和處理,而目前采用的大部分程序設計語言都需要程序員自己定義貨幣類型等,這不能不說是一個遺憾。C#通過提供這種專門的數據類型,為我們彌補了這一遺憾,使我們能夠更為快捷地設計這方面的應用程序。
十進制類型是一種高精度、128位數據類型,它所表示的范圍從大約 到 的28至29位有效數字。注意,該精度是用位數(digits)而不是以小數位(decimal places)來表示的。運算結果准確到28個小數位。十進制類型的取值范圍比double類型的范圍要小得多,但它更精確。
當定義一個decimal變量並賦值給它時,使用m下標以表明它是一個十進制類型,如:
decimal d_value=10.m;
如果省略了m,在變量被賦值之前,它將被編譯器當作雙精度(double)類型來處理。