一个惯性思维出现的错误-有点意思
很久没有积累东西了,碰巧前几天遇到一个的问题,虽然不大但是比较有意思,在这里稍微记录一下,以后可以作为面试题之类的考验其他人,想想也远比那些被我们诟病的题目要实际的多:
有表结构如下:
T_SOME_TABLE{
crowid varchar(36);
zrmb float(7,3);
zjdw float(7,3);
}
问以下两段代码,哪段会出现错误,为什么?
---------------------------------------代码片段1:--------------------------------------
后台代码如下:String hqlStr="select SUM(t.zrmb) AS SUM_1,SUM(t.zjdw) AS SUM_2 from T_SOME_TABLE t where 1=1 ";List sumList=baseDao.find(hqlStr);//hibernate实现查询HQL汇总语句返回结果Listrequest.setAttribute("sumList",sumList);前台代码如下:String sum1="";String sum2="";ArrayList sumList=request.getAttribute("sumList")==null?null:(ArrayList)request.getAttribute("sumList");if(null!=sumList){for(int i=0;i<sumList.size();i++){Object[] tempObj=(Object[])sumList.get(i);sum1=tempObj[0]==null?"0.0":tempObj[0].toString();sum2=tempObj[1]==null?"0.0":tempObj[1].toString();}}out.prinln("sum1:"+sum1);out.prinln("sum2:"+sum2);后台代码如下:String hqlStr="select SUM(t.zrmb) AS SUM_1 from T_SOME_TABLE t where 1=1 ";List sumList=baseDao.find(hqlStr);//hibernate实现查询HQL汇总语句返回结果Listrequest.setAttribute("sumList",sumList);前台代码如下:String sum1="";ArrayList sumList=request.getAttribute("sumList")==null?null:(ArrayList)request.getAttribute("sumList");if(null!=sumList){for(int i=0;i<sumList.size();i++){Object[] tempObj=(Object[])sumList.get(i);sum1=tempObj[0]==null?"0.0":tempObj[0].toString();}}out.prinln("sum1:"+sum1);Object tempObj=(Object)sumList.get(i); sum1=tempObj==null?"0.0":tempObj.toString();