c# - decimal.parse ("value") 看起来很奇怪

标签 c#

我正在处理其他人的代码,并且看到如下内容:

if ((somevariable) >  decimal.Parse("24,999.99")) ...

return int.Parse("0");

我想不出任何合乎逻辑的理由来代替

if ((somevariable) > 24999.99) ...

return 0;

我错过了什么?

最佳答案

原始代码和您提议的更改之间存在语义差异,但您的怀疑是对的。

从字符串的转换是很愚蠢的,抱歉。永远没有必要这样做。区别在于原始代码将字符串解析为 decimal,但您的更改将使用 double。所以,应该是:

if (somevariable > 24999.99m) ...

关于c# - decimal.parse ("value") 看起来很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10019975/

相关文章:

c# - 使用 View 的 MySQL 数据库报告

c# - WPF 组合框对更改不具有约束力

c# - 从菜单显示 chm

c# - 在 docker 机器上调试时 MySql 连接被拒绝

c# - 检查文本中的正负字符串(C# 到 Objective-C )

c# - 什么会导致标有 async 的方法同步执行,即使它包含 await 调用?

c# - 通过 Windows 窗体应用程序接受来自 PayPal 的付款

c# - 图像文件名未传递给 Controller ​​ mvc c#

c# - 副作用、短路和空传播方法调用运算符 (?.)

c# - 一个通用事件名称或多个描述性事件名称