java问题!急急!!!!!!!!!!请高手指教

qiaoy0707 2008-01-31 01:44:00

ArrayList panelNoList=new ArrayList();
ArrayList parentLotNoList=new ArrayList();
panelNoList.add(this.lotNo);
Properties parentPro=new Properties();
parentPro=Lot.getParentLotNoByLot(conn,panelNoList,log);//根据panelNoList去找ParentLotNo

for(int i=0;i<panelNoList.size();i++)
{
String panelNo=(String)panelNoList.get(i);
String tempParentLotNo=parentPro.getProperty(panelNo);//取出panelNo对应的parentLotNo
parentLotNoList.add(tempParentLotNo);
}

if(parentLotNoList==null || (parentLotNoList!=null &&parentLotNoList.size()==0 )){ //如果parentLotNo为空,则将panelNoList作为parentLotNo

parentLotNoList=new ArrayList();
parentLotNoList.add(this.lotNo);
}

Lot.writeToR_LOT_PLOT(conn,biz,this.newLotNo,parentLotNoList,log);//将parentLotNo和对应的新lotNo写入表


我想请教一下,为什么parentLotNoList为空,系统并没有去执行if语句?导致将空的parentLotNo写入表而报错!是我写if语句的不对吗?writeToR_LOT_PLOT和getParentLotNoByLot这两个方法没问题,我已经测过了,请高手指教!!!!!!!
...全文
73 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiaoy0707 2008-01-31
  • 打赏
  • 举报
回复
耶!搞定!非常感谢大家的帮忙!
peng3696 2008-01-31
  • 打赏
  • 举报
回复
String tempParentLotNo=parentPro.getProperty(panelNo);//取出panelNo对应的parentLotNo
parentLotNoList.add(tempParentLotNo);

执行parentLotNoList.add的时候,你不用对tempParentLotNo进行判断的吗
qiaoy0707 2008-01-31
  • 打赏
  • 举报
回复
那怎样判断对象是否为空呢
peng3696 2008-01-31
  • 打赏
  • 举报
回复
输出结果是@@@@@@@@@parentLotNoList[null]
这个是parentLotNoList中有元素,元素值为null
yuanjun1107 2008-01-31
  • 打赏
  • 举报
回复
你的arrayList不办空,但你存在arrayList里面的对像是为空的。所以要报错的。要判断对像不办空的情况。
qiaoy0707 2008-01-31
  • 打赏
  • 举报
回复
我在if语句之前已经写了
System.out.println("@@@@@@@@@parentLotNoList "+parentLotNoList);
输出结果是@@@@@@@@@parentLotNoList[null] 啊?
我也晕了,我觉得我的语句没有错啊
peng3696 2008-01-31
  • 打赏
  • 举报
回复
parentLotNoList不会为空啊,当然不会执行
if(parentLotNoList==null ¦ ¦ (parentLotNoList!=null &&parentLotNoList.size()==0 ))
的了
qiaoy0707 2008-01-31
  • 打赏
  • 举报
回复
不是啊,如果我在if语句下加一句
System.out.println("******************");
这句话没执行,我的this.lotNo不为空的啊
lizzz 2008-01-31
  • 打赏
  • 举报
回复
sorry,上一帖下结论太草率,希望不会误导你。
调试一下parentLotNoList中是不是有 parentLotNoList.add(null);的情况吧。
lizzz 2008-01-31
  • 打赏
  • 举报
回复
	public static void main(String[] args) {
List l = new ArrayList();
l.add(null);
System.out.println(l.size());
}

这个输出结果是1.
panelNoList.add(this.lotNo); 这句中的this.lotNo为null。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧