直到現在,從來沒有必要這樣做。如何比較小數與硬編碼值?
努力確保chargeAmount(這是十進制的類型)不低於1分:
if (chargeAmount < 0.01)
throw new ArgumentOutOfRangeException("chargeAmount");
我試圖0.01D但很明顯,我不知道你如何格式化這個。
直到現在,從來沒有必要這樣做。如何比較小數與硬編碼值?
努力確保chargeAmount(這是十進制的類型)不低於1分:
if (chargeAmount < 0.01)
throw new ArgumentOutOfRangeException("chargeAmount");
我試圖0.01D但很明顯,我不知道你如何格式化這個。
你的意思是你希望它是一個十進制文字而不是雙倍?
if (chargeAmount < 0.01m)
啊廢話。我試過0.0M不是m(現在是時候讓我感到羞恥) – PositiveGuy 2010-08-13 16:32:21
嗯,M也應該工作。也許你在嘗試一個錯誤時引入了一個錯字(沒有比那些打錯了這個錯誤實際上正確的錯字更糟糕的錯字)。 – 2010-08-13 16:35:28
一個decimal literal不使用D
(這對Double) - 它使用M
(費錢):
if (chargeAmount < 0.01M)
throw new ArgumentOutOfRangeException("chargeAmount");
大聲笑,你做了我所做的,它的小寫字母:) :) – PositiveGuy 2010-08-13 16:33:17
@CoffeeAddict - 不是這樣。從MSDN頁面:'如果您想將數字實數字面值視爲十進制數,請使用後綴m或M' – Oded 2010-08-13 16:35:36
和我曾試圖中號 – PositiveGuy 2010-08-13 16:34:50
我已經編輯您的標題,因爲它沒有代表你的問題。 – Stijn 2017-09-04 16:23:06