c# - 你将如何重构这段代码?

标签 c#

您将如何重构这段代码?

double p = (Convert.ToDouble(inta) / Convert.ToDouble(intb)) * 100;
double v = (p / 100) * Convert.ToDouble(intc);
return (int)v;

这对我来说似乎很困惑,我知道我可以将它压缩到一行中,但我很想知道其他人会怎么做。

谢谢

最佳答案

假设intaintbintc的类型为int/Int32 然后 Convert.ToDouble 基本上与简单转换为 double 相同。

return (int)((inta / (double)intb) * intc);

这是否真的值得重构是另一回事。将中间计算保留为单独的语句以提高可读性通常更有意义,即使您不需要这些中间结果也是如此。当然,具有有意义的变量名会产生很大的不同。

关于c# - 你将如何重构这段代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4128671/

相关文章:

c# - 如何退出函数?

c# - 财务申请中的小数点位置不正确

C# 语法 :----- IEnumerable<Person> people = new List<Person>();

c# - WPF ObservableCollection 在创建新的 ObservableCollection 时不更新 DataGrid

c# - 按内容以编程方式自动调整 GridViewColumns 的大小

c# - 并行进行 http 调用时出现未经授权的响应

c# - 在 Visual C# 中,如何禁用 WiX 项目? (使构建太慢)

c# - WPF DataBinding 不更新属性(仅在启动时更新一次)

c# - LINQ to Entities 无法识别方法 'System.Object get_Item(System.String)' 方法

c# - 如何将泛型组合的概念封装成一个新的类型?