您好,登錄后才能下訂單哦!
這篇“C#四舍五入MidpointRounding.AwayFromZero怎么使用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“C#四舍五入MidpointRounding.AwayFromZero怎么使用”文章吧。
四舍五入 在計算中 經常使用到,但是如果使用 Math.Round,只是五舍六入
在Math.Round內傳入MidpointRounding.AwayFromZero枚舉,就可以實現四舍五入的效果了,
Debug.Log($"四舍五入{66.6}。。。{(int)Math.Round(66.6, MidpointRounding.AwayFromZero)}"); Debug.Log($"四舍五入{66.5}。。。{(int)Math.Round(66.5, MidpointRounding.AwayFromZero)}"); Debug.Log($"四舍五入{66.4}。。。{(int)Math.Round(66.4, MidpointRounding.AwayFromZero)}"); Debug.Log($"四舍五入{66.6}。。。{(int)Math.Round(66.6)}"); Debug.Log($"四舍五入{66.5}。。。{(int)Math.Round(66.5)}"); Debug.Log($"四舍五入{66.4}。。。{(int)Math.Round(66.4)}");
C#中的Math.Round()并不是使用的"四舍五入"法。
其實C#的Round函數都是采用Banker’s rounding(銀行家算法),即:四舍六入五取偶
Math.Round(0.4) //result:0 Math.Round(0.6) //result:1 Math.Round(0.5) //result:0 Math.Round(1.5) //result:2 Math.Round(2.5) //result:2
使用MidpointRounding.AwayFromZero的效果:
Math.Round(0.4, MidpointRounding.AwayFromZero); // result:0 Math.Round(0.6, MidpointRounding.AwayFromZero); // result:1 Math.Round(0.5, MidpointRounding.AwayFromZero); // result:1 Math.Round(1.5, MidpointRounding.AwayFromZero); // result:2 Math.Round(2.5, MidpointRounding.AwayFromZero); // result:3
保留后倆位小數點要用到另一個重載方法
Math.Round((decimal)22.325, 2,MidpointRounding.AwayFromZero)//result : 22.33
Math.Round(0.333, 2);//按照四舍五入的國際標準 double dbdata = 0.335; string str1 = String.Format("{0:F}", dbdata);//默認為保留兩位 decimal.Round(decimal.Parse("0.3453"), 2) Convert.ToDecimal("0.3333").ToString("0.00");
String.Format("{0:N1}", a) 保留小數點后一位 String.Format("{0:N2}", a) 保留小數點后兩位 String.Format("{0:N3}", a) 保留小數點后三位
double s=0.55555; result=s.ToString("#0.00");//點后面幾個0就保留幾位
double dbdata = 0.55555; string str1 = dbdata.ToString("f2");//fN 保留N位,四舍五入
以上就是關于“C#四舍五入MidpointRounding.AwayFromZero怎么使用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。