我编写了一个区间分析 C# 应用程序,因此我必须处理非常大或非常小的数字。我认为 double 是一种非常好的数据类型(因为浮点运算)。用户可以定义任何函数,我可以使用以下正则表达式检测其中的数字:
([0-9]+)|([0-9]+.[0-9]+)
这是一个反之亦然的过程,应用程序计算了一些数据,我也必须在计算出的数据上匹配正则表达式。我的问题是,在某些关键情况下,double 使用科学缩写,例如 1E-9,但我想使用上面正则表达式中定义的格式。我认为 decimal 是一种适合这种情况的类型,但常见的数学函数使用双输入,所以我必须在所有地方转换它。
有没有好的有效方法来处理这个问题? (对不起我的英语)。
最佳答案
double
在您将其呈现为字符串之前不使用任何特定的文本格式。 然后您可以通过指定 standard format specifier 来选择要做什么或 custom format specifier .所以告诉它你想要什么。 double.ToString(string)
上显示了范围广泛的示例
关于C# 数学应用程序的哪种数字类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15635296/