刚刚在String强制类型转换与toString()方法上 犯了一个错误,害我花了2个小时才排查出错误所在。
1.HashMap<String,String>hm = new HashMap<String,String>();
2.for(int i = 0;i < tm.getColumnCount();i++){
3. hm.put(tm.getColumnName(i), tm.getValueAt(row, i).toString());
4.}
其中tm是个实现TableModel方法的类,第3行是将从tm中读取的信息添加到HashMap中,
实际上这个时候用toString()方法是不恰当的,因为如果tm中有Null存在,程序就可能出现异常。
因为null没有toString()方法,但是null却可以实行强制类型转换成String:(String)null。
因此在不确定所读取的值是否为null的情况下,用强制类型转换的安全性比toString 方法要高。