有时候碰到这样的情况
if(list.size()>0) {String ss = (String)list.get(0);
System.out.println("xxxx");
}else {
System.out.println("xxxx");
}
不论是if还是else都不能执行,这是为何:
下面分晓
:
上面的代码是打印不出System.out.println(xmzs1)的信息,因为在String xmzs1 = (String) list.get(0)已经出错了,大家肯定觉得奇怪,为什么Object类型的数据强转String
会失败呢?这就要注意一个细节问题了,list 获得的Sql查询结果返回的是Object类型吗????这点至关重要,也特别容易忽略,如果是Object类型的话则强转没错,如果不是呢?是Integer类型的话强转就会出现错误!!!
而改成这个的话无论什么类型都可以toString变成字符串!!!