我正在开发一个使用JSON并使用代表金钱的值的Jersey REST客户端,但该值必须格式化为一个字符串,在点之前有16个字符,在点之后有两个字符,这意味着字符串将用零填充以完成所需的长度。
将发送到Web Service的JSON字符串:
... “大写金额”:“0000000000000001.00” ...
我有一个表示请求的对象和一个@JsonProperty带注释的字符串字段,但是我不确定如何在发送之前收集字符串。
我应该有一个String setter接受任何String并控制另一个类中String的格式吗?
我是否应该在格式化之前接受并验证该值的字符串设置器?
或者我应该有一个数字设置器,将数量转换为String并将其传递给String字段?
答案 0 :(得分:1)
您可以通过Double.parseDouble(string);
将字符串转换为double
您将使用double,因为您使用小数点,我假设小数不总是.00。
答案 1 :(得分:0)
所以你必须:
阅读该号码的任何表示形式: - “000 [...] 001.00” - “0.09” - “2.43”
始终将其写为“00 [...] 001.00”
如果是这种情况,我可能会使用String setter来解析,验证和格式化任何传入。这为您提供了自由与控制之间的合理平衡。