0

我有几个数字文本框(数据类型为 Number),用户可以在其中添加大数值(大约12 到 15位,如12345678901234)。

现在,当我将它存储到一个数字中并将其传递给 java(使用 BlazeDS)时,它实际上是以指数格式进行的,例如1.79769313486231e+308.

我如何以这样的方式处理这个问题,即 flex 会将正确的数值而不是指数格式传递给 java。

提前致谢...

4

2 回答 2

0

1.7+e308是没有办法的15-digit数字。 15 digits很适合2^64,所以Number类型就可以了。它自然地转换为 Java 的double类型。

指数形式只是将内部值转换为人类可读字符串的一种方式,因此在转换double为字符串时只需使用不同的格式。

于 2013-05-30T08:44:44.863 回答
0

不幸的是,ActionScript 的 uint 最多只能达到 4,294,967,295。听起来这对你来说还不够高。Java 无法告诉您将 Number 表示为 uint 而不是浮点数。您可以在 Java 端修复它。

也许考虑将这些值视为字符串。我知道这很糟糕,但 String 似乎是 ActionScript 最适合您的大量数据的数据类型。

它们是序列号还是什么?

于 2013-05-29T17:35:11.033 回答