限制 GWT 中的小数位数?
在纯 Java 中,我通常会使用如下所示的函数,用于将给定数字 value
的小数位数限制为 decimalCount
。但是,根据 GWT 文档,“GWT 不提供对日期和数字格式化类(例如 java.text.DateFormat、java.text.DecimalFormat、java.text.NumberFormat 和 java.TimeFormat)的完整模拟。”为了使其在 GWT 中工作,需要对以下函数执行什么操作?
public static String getFormatted(double value, int decimalCount) {
DecimalFormat decimalFormat = new DecimalFormat();
decimalFormat.setMaximumFractionDigits(decimalCount);
return decimalFormat.format(value);
}
In pure Java, I would normally have a function like the one below for limiting the number of decimal places to decimalCount
for a given number value
. However, according to the GWT docs, "GWT does not provide full emulation for the date and number formatting classes (such as java.text.DateFormat, java.text.DecimalFormat, java.text.NumberFormat, and java.TimeFormat)." What would one do to the following function in order to make it work in GWT?
public static String getFormatted(double value, int decimalCount) {
DecimalFormat decimalFormat = new DecimalFormat();
decimalFormat.setMaximumFractionDigits(decimalCount);
return decimalFormat.format(value);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
请查看 NumberFormat (com. GWT Javadoc 中的 google.gwt.i18n.client.NumberFormat)。
我从未使用过它,但我在那里看到了这个例子:
所以这应该适合你。
更新
此方法提供与您问题中的功能相同的功能。我继续询问最有效的方法来解决这个问题,请参阅该问题此处。 (抱歉,这个答案已经被编辑了这么多 - 这只是让我烦恼)
替代方案包括使用一定数量的“0”并使用子字符串来提取所需的模式,正如 @Thomas Broyer 在评论中提到的那样。
Check out NumberFormat (com.google.gwt.i18n.client.NumberFormat) in the GWT Javadoc.
I've never used it but I see this example in there:
So this should work for you.
Update
This method provides the same functionality as the one in your question. I went ahead and asked for the most efficient way to go about this, see that question here. (Sorry this answer has been edited so much - it was just bugging me)
Alternatives include using a set amount of "0"'s and using substring to pull out the required pattern as @Thomas Broyer mentioned in the comments.
您可以使用
GWT 库,该库将呈现例如 1234.789789 到 1234.78
您可以在此处找到完整的工作示例: http://gwt.google.com/samples/Showcase/Showcase.html#!CwNumberFormat
You can use
from GWT library which will render for example 1234.789789 to 1234.78
You can find a full working example here: http://gwt.google.com/samples/Showcase/Showcase.html#!CwNumberFormat
在当前的 GWT(2.5、2.6)中,现在有:
编辑:根据请求添加了 GWT 版本
In current GWT (2.5, 2.6), there is now:
Edit: added GWT versions per request
您还可以在 UiBinder 文件中指定十进制格式
You can also specify the decimal format within the UiBinder file