[英]C# Double Rounding
I'm currently working on a program and im converting my java code into c# . 我目前正在开发一个程序,并将我的java代码转换为c#。 but i'm having some trouble.
但我遇到了麻烦。
public double round(double value){
BigDecimal b = new BigDecimal(value);
b = b.setScale(2,BigDecimal.ROUND_UP);
return (b.doubleValue());
}
i wrote this converting code but i cant convert it to c#.BigDecimal type causes some problem and im totally new to .Net.Definitely need some help. 我编写了此转换代码,但无法将其转换为c#.BigDecimal类型,这会导致一些问题,并且对.Net来说是全新的。绝对需要一些帮助。
Edit : Ok buds i got it , sorry for the dumb question. 编辑:好吧,我明白了,抱歉这个愚蠢的问题。
Here is a C# method that you can use instead: 这是您可以代替使用的C#方法:
public double round(double value){
return Math.Round(value, 2, MidpointRounding.AwayFromZero);
}
.Net's MidpointRounding.AwayFromZero
is the equivalent of java's ROUND_UP
. .Net的
MidpointRounding.AwayFromZero
等效于Java的ROUND_UP
。
Couldn't you just do this to round to 2 fractional digits? 您不能只将其舍入到2个小数位吗?
double foo = 3.143;
double fooRounded = Math.Round(foo, 2);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.