[C#] Math.Round 正確的使用四捨五入,解決有時候沒有進位的問題

在撰寫 .Net 運算相關的程式碼的時候,會很常遇到當你需要四捨五入時,系統算出的解果不是我們日常生活中的運算結果,舉個簡單的小例子:

當我們有 1.5 跟 2.5 的數字要使用 Math.Round 對整數四捨五入時就會發現,輸出都是 “2”,那究竟為甚麼 .Net 會輸出這樣的結果出來呢?這是因為 .Net 所使用的四捨五入算法是”銀行家”算法(銀行家算法:四捨六入五考慮,五後非零就進一,五後為零看奇偶,五前為偶應捨去,五前為奇要進一),所以會導致出來的結果會跟我們平常學習的四捨五入不相同。

Math.Round(1.5);     //output: 2
Math.Round(2.5);     //output: 2
繼續閱讀

[C#] 利用 Distinct 去除 List<> 中重複的資料

  你還在使用迴圈讓 List 裡面的重複資料移除嗎?我們可以有更好的解決方法,讓多行的 For 回圈簡短成一行就可以達到讓 List 裡面的資料不重複喔!

-程式碼

  假如說現在有一個 List<String> DuplicateList = new List(); ,如果我想要讓裡面的重複值移除只要使用下面的方法就可以簡單達成囉!

DuplicateList = DuplicateList.Distinct().ToList();