具有接受默认值和don'的parseInt、parseLong、parseDouble等的Java库;t抛出异常?
我喜欢中的建议,即实现一个解析int的实用方法,但如果无法解析字符串,则返回一个默认值具有接受默认值和don'的parseInt、parseLong、parseDouble等的Java库;t抛出异常?,java,parsing,Java,Parsing,我喜欢中的建议,即实现一个解析int的实用方法,但如果无法解析字符串,则返回一个默认值 public static int parseInt(String s, int defaultValue) { if (s == null) return defaultValue; try { return Integer.parseInt(s); } catch (NumberFormatException x) { return defau
public static int parseInt(String s, int defaultValue) {
if (s == null) return defaultValue;
try {
return Integer.parseInt(s);
} catch (NumberFormatException x) {
return defaultValue;
}
}
是否有一个现有的开源库(例如,来自apache commons或google)可以实现此功能以及其他数据类型,如boolean、float、double、long等?有几个tryParse
方法,在解析失败时返回null,例如,etc具有用于转换的方便方法的类。另一种方式是,如果出现错误,可以指定默认值。e、 g
NumberUtils.toLong("") => 0L
NumberUtils.toLong(null, 1L) => 1L
NumberUtils.toByte(null) => 0
NumberUtils.toByte("1", 0) => 1
默认值
是保留字。另外,自己编写代码可能更容易。将示例更改为不使用保留字。虽然这些方法不会引发NumberFormatException,但应该注意,如果将null字符串传递给它们,它们将引发NullPointerException,而不仅仅是返回null。尽管它会毫无例外地进行解析,默认值可能不受欢迎。如果这是像我一样的情况,那么org.apache.commons.validator.routines.LongValidator.validate(字符串)也可以采用模式和/或区域设置。