类型转换问题

来源:互联网 发布:mac专用dj软件 编辑:程序博客网 时间:2024/06/03 17:36

1) Object类型对象,我们对其直接使用字符串操作函数toString,当其为null是就会崩溃。
如 int result = Integer.valueOf(obj.toString());
一旦obj为空,上面代码直接崩溃。
解决:编写一个类型安全转换函数convertToInt,当转换失败,就返回默认值。
public f inal static int convertToInt(Object value, int defaultValue) {
if (value == null || “”.equals(value.toString().trim())) {
return defaultValue;
}
try {
return Integer.valueOf(value.toString());
} catch (Exception e) {
try {
return Double.valueOf(value.toString()).intValue();
} catch (Exception e1) {
return defaultValue;
}
}
}
2)如果长度不够,那么执行substring 函数时,就会崩溃。
substring 函数有2 个参数:start 和end。
如:
String cityName = “T”;
String f irstLetter = cityName.substring(1, 2);
代码必然崩溃。所以每次在使用substring 函数的时候,都要判断start 和end 两个参数是否越界了。应该这样写:
String cityName = “T”;
String f irstLetter = “”;
if (cityName.length() > 1) {
f irstLetter = cityName.substring(1, 2);
}

0 0
原创粉丝点击