列表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()未设置值。请帮助。

如果列车未被添加到集合train,检查:

  • trainDetailTotrainDetailFrom不是空的
  • 比较对象使用equals()(按值比较)而不是使用==(按引用比较)是相同的。

我找到解决办法了。我还没有初始化train它是ArrayList<Train>的实例所以我初始化为train=new ArrayList<Train>();

最新更新