在 Java 代码中,可以使用使用后缀指示文字类型的数字文字,例如1D
、0.15F
或 5L
用于 double
、float
和 分别长
。还支持十六进制和八进制表示,可能还有一些我没有提到的其他东西。
我想要一些与 javac
内部使用的解析器等效的东西,它会返回 Number
对象。
NumberFormat.parse()
, 在 DecimalFormat
中实现似乎只生成 Double
和 Long
对象,当使用上面提到的一些符号时会出现很多问题。
Java 6 及更高版本的标准类库中是否有解析器能够透明地解析此类字符串并返回 Number
的正确子类?
最佳答案
不,没有。您必须自己编写此方法。这很简单,查看最后一个非空白字符并输入一个开关 block 以返回正确的 Number 子类。
关于java - 是否有返回请求的 Number 子类的 Java 数字字符串文字的解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8648420/