java - 为什么NumberFormat中需要以下2个方法?

标签 java parsing number-formatting

我看到NumberFormat有两种非常相似的方法:

1)

abstract Number     parse(String source, ParsePosition parsePosition)

Returns a Long if possible (e.g., within the range [Long.MIN_VALUE, Long.MAX_VALUE] and with no decimals), otherwise a Double.

2)

Object  parseObject(String source, ParsePosition pos)

Parses text from a string to produce a Number.

在存在 parse(s,ParseIndex) 的情况下,需要将 parseObject(..) 转换为所需的输出? 我知道第一个方法会抛出 ParseException 而后者则不会。 只是想知道为什么需要这两种非常相似的方法。 提前致谢。

最佳答案

关于 JDK 最常见的提示之一是为什么 Integer.parseInt 和类似的方法不能用于在不涉及昂贵的异常机制的情况下验证字符串。 NumberFormat 似乎通过提供一种可以通过返回 null 来表示失败的方法来回答这个提示。

关于java - 为什么NumberFormat中需要以下2个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18442203/

相关文章:

java - 使用类的对象调用另一个类的方法

java - 文件到流 -> 流到信息 Java

java - 在 Java 中分离协议(protocol)解析器和处理程序

java - 在 Java 中修改 XML 的内存有效方法

python - 来自jython中已解析的电子邮件对象的电子邮件正文

excel - VBA EXCEL - NUMBERFORMAT 不起作用,但 FORMAT FUNCTION 起作用

java - Hibernate @SQLDelete sql 不添加模式

java - 将 LocalDate 转换为 DD/MM/YYYY LocalDate

ios - 如何在不四舍五入的情况下将字符串转换为货币?

vba - Numberformat 不会更改 vba excel 中的单元格值