c# - 如何在没有多次转换的情况下逐字定义小数数组?

标签 c# arrays casting decimal

如何在不显式转换每个小数的情况下定义一个小数数组?

//decimal[] prices = { 39.99, 29.99, 29.99, 19.99, 49.99 }; //can't convert double to decimal
//var prices = { 39.99, 29.99, 29.99, 19.99, 49.99 }; //can't initialize... 
decimal[] prices = { (decimal)39.99, (decimal)29.99, (decimal)29.99, (decimal)19.99, (decimal)49.99 };

最佳答案

使用 m 后缀。

decimal[] prices = { 39.99m, 29.99m, 19.99m, 49.99m };

如果没有 m(或 M)后缀,编译器会将其视为 double 。

-- http://msdn.microsoft.com/en-us/library/364x0z75(VS.71).aspx

关于c# - 如何在没有多次转换的情况下逐字定义小数数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3187228/

相关文章:

c++ - 将 char 转换为 unsigned char

c# - 重定向后 HttpContext.Current.Session.IsNewSession 仍然为真

javascript - 如何 AJAX POST 对象数组到 Node.js 服务器?

java - 将 Object 转换为 ArrayList<String[]> 时为 "Warning: [unchecked] unchecked cast"

arrays - Quicksort分区为什么随机枢轴?

ios - 如何将另一个数组中的数组存储到 Swift 中从 JSON 传递的全局变量?

java - java中如何将 double 分成整数?

c# - 如果外键缺失,自动添加数据

c# - 通过 C# 启动的 PowerPoint 不退出

c# - 在 C# 中使用 GitLabCI