gpt4 book ai didi

java - 如何从迭代器 next() 方法返回的对象中获取信息?

转载 作者:行者123 更新时间:2023-12-02 05:56:46 25 4
gpt4 key购买 nike

我想将人员对象的目标变量(int 类型)与电梯对象的当前楼层变量(int 类型)进行比较。 person 对象位于属于 Lift 类的 ListArray 中。我正在使用迭代器接口(interface)来迭代 ListArray,以将每个人的目的地与电梯的当前楼层进行比较。 match(int destination) 方法用于返回 true 或 false。

这是我的代码,不起作用:

Iterator iterator = lift.getOccupants().iterator();
while(iterator.hasNext()){
if(lift.match(iterator.next().getDestination())){
}

getDestination() 方法带有下划线并带有错误:

cannot find symbol, method getDestination(), location class Object

最佳答案

next() 方法返回类型是 Object,因此您需要将其类型转换为 Person 对象。
喜欢

((Person)iterator.next()).getDestination()  

或者,您可以使用像 List 这样的通用列表对象,并通过它获取通用迭代器。

Iterator<Person> iterator = lift.getOccupants().iterator();

那么你就不需要任何转换。

关于java - 如何从迭代器 next() 方法返回的对象中获取信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23011130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com