2017-04-27 52 views
0

我已经OfferArrayList的对象:如何在单次迭代中更新依赖于数组中所有元素的数组元素的字段?

public class Offer { 
    String offerId; 
    String offerType; //Can be REGULAR or FASTTRACK 
    String ticketId 
} 

例如,如果我送买了两个报价的请求,在响应中ticketId应该是<offerId1+offerType1>,<offerId2+offerType2>

的问题是,我有首先迭代所有报价以生成ticketId,因为ticketId是以逗号分隔的offerId + offerType字符串,即它依赖于数组的所有元素。然后,我必须再次迭代优惠,以在每个Offer对象中填充相同的ticketId

有没有一种方法可以在单次迭代中做到这一点?

+0

所有优惠的门票编号是否相同? –

+0

@YogeshPatil不,个别优惠的ticketId取决于其offerId和offerType。 – mantri

回答

0

那么我认为它不存在ticketId然后在Offer

但是对于你的问题,你可以使用一个包装对象,其中包含String - ticketId并在Offer中存储对所述包装的引用。在遍历Offers并生成ticketId之后,您可以将它存储在包装器中,并且所有Offer都可以通过它们的包装器引用来访问它。

+0

其实这不是确切的问题。我已经最大限度地减少了我的问题陈述,但问题或多或少与此相同。 :) – mantri

+0

但是接下来我必须使用'offer.wrapper.ticketId'来引用'ticketId'吗? – mantri

+0

是的,但在Java中,使用getter-和setter-方法来访问类的变量是集中的。使用这种技术你可以隐藏它是来自类的调用者的包装的事实。你有什么更新? – kalsowerus

相关问题