【发布时间】:2015-12-03 21:21:04
【问题描述】:
我一直在研究 Java 的 ParseException,在尝试编写自己的从 String 解析为 int 的方法时,有两个问题:
- 我应该什么时候扔掉它?当输入无效时,Java 的
Integer.parseInt(String string)会抛出NumberFormatException(因为它是IllegalArgumentException的子类是有意义的),并且根本不会抛出ParseException。 - 什么是“
errorOffset”?ParseException的构造函数强制你给它一个值——这是什么意思?
【问题讨论】:
-
第二个问题,
getErrorOffset方法告诉你它的用途。它是“发现错误的位置”。 -
这是什么意思?在字符串中发现错误的位置?还是方法? ParseException 是由字符串中的某些错误(例如字母)引起的吗?
-
我将其解释为
String中的位置。告诉方法中的位置对于大多数调用者来说不是很有用的信息,因为实现的细节应该无关紧要。 -
在字符串中。解析
"987A65"将在索引3处显示错误偏移量。 -
确实如此,谢谢。那么这是否回答了第一个问题?字符串有问题时应该抛出
ParseException?那么是抛出ParseException还是NumberFormatException更好?
标签: java parsing parseexception