列出add()方法错误

时间:2013-03-21 10:34:50

标签: hibernate loops for-loop nested add

trainDetailFrom = (ArrayList<TrainDetail>) session.createQuery("from TrainDetail where Station = '"+this.getFrom()+"'").list();
trainDetailTo =(ArrayList<TrainDetail>) session.createQuery("from TrainDetail where Station = '"+this.getTo()+"'").list();
for(TrainDetail trainFrom:trainDetailFrom)
{
    for(TrainDetail trainTo:trainDetailTo)
    {
        if(trainFrom.getTrain()==trainTo.getTrain() &&trainFrom.getDistance()<trainTo.getDistance())
        {
            this.train.add(trainFrom.getTrain());
        }
    }
}

我无法在网页上获得列车价值,当我运行此行动页面时,它不提供列车价值我认为train.add()没有设定值。请帮忙。

2 个答案:

答案 0 :(得分:0)

如果没有将火车添加到列车集合中,请检查:

  • trainDetailTo trainDetailFrom 不为空。
  • 使用equals()比较对象是相同的(按值比较),而不是使用==进行比较(按引用进行比较)。

答案 1 :(得分:0)

我得到了解决方案。我没有初始化train ArrayList<Train>的实例,所以我初始化为train=new ArrayList<Train>();