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,检查:
- trainDetailTo和trainDetailFrom不是空的
- 比较对象使用
equals
()(按值比较)而不是使用==
(按引用比较)是相同的。
我找到解决办法了。我还没有初始化train
它是ArrayList<Train>
的实例所以我初始化为train=new ArrayList<Train>();