如何使用迭代器接口来获取以下内容

时间:2014-05-24 06:52:35

标签: java interface iterator

所以我有腿代表旅程的组成部分

旅程由腿列表定义

private List<Leg> journey = new ArrayList<Leg>();

并具有构造函数:

 public Journey(Station startStation, Station endStation, Service service) {
    journey.add(new Leg(startStation, endStation, service));
}

并具有以下可用方法

public Iterator<Leg> iterator() {
    return journey.iterator();
}

我的问题是,我如何使用iterator interface来获得旅程的第一站?

2 个答案:

答案 0 :(得分:1)

虽然我真的不知道你为什么要使用Iterator接口,如果你真的想要,你可以这样做:

// suppose you have a journey already
Iterator<Leg> it = journey.iterator();

Leg firstLeg = null;

// just to be safe that your journey is not empty
if (it.hasNext())
    firstLeg=it.next();

答案 1 :(得分:0)

试试这个

Leg first = journey.iterator().next();

如果你需要其他腿,那么

Iterator<Leg> i = journey.iterator();
Leg first = i.next();
Leg second = i.next();
...