我要创建一个包含金额的API。我想知道最佳做法是什么,或者某人是否对某些格式有好的或坏的经历。
我已经看到了以下两种可能性:
我在这两者之间来回走动。所以我出去查看其他API使用的内容,并提出以下列表:
因此,在18个采样的API中,4个使用次要单位,13个使用基本单位,1个使用难以理解的混合物。在13个使用基本单位的人中,10个是以引用的字符串形式传输它们,3个是不加引号的小数字(如果你看看Intuit,实际上是2个半)。
我个人觉得不得不解析像" 8.20"这样的字符串,因为如果你解析它就会变成" 8.19999999 ..."如果你错误地使用浮动。所以我只倾向于发送整数。但我不认为这是一个很好的论据,我发现通常API倾向于将基本单位作为字符串。
对于每种格式,你有什么好的论据吗?
答案 0 :(得分:1)
整数会占用点,这个字节少一个:D整数将有一个max_int,你有没有足够丰富的人可能会溢出吗?
将货币字符串解析为float的人无论如何都会将int转为float。
如果发送二进制数据,整数将远小于字符串和方法。如果您仍然发送xml,您也可以将其定义为一个字符串(该文件可能在发送之前被压缩了吗?),尝试使其成为"货币"键入而不是将其列为完整字符串。
答案 1 :(得分:0)
哪种数据类型最好取决于您的使用情况。对于计算,整数或双精度会更快,跳过解析步骤。 如果您通过网络发送数据是您的目标,那么您最好使用字符串。
也就是说,使用任何一种方法都可以实现任何功能。