【问题标题】:Iterable as a return type - Iterable itself or a subclass? [duplicate]可迭代作为返回类型 - 可迭代本身还是子类? [复制]
【发布时间】:2020-12-01 18:05:54
【问题描述】:

我无法理解 getAvailableRooms 方法。我有方法需要填写,但我不太了解 Iterabl getAvailableRooms 方法。

public interface BookingManager {

public boolean isRoomAvailable(Integer room, LocalDate date);

public void addBooking(String guest, Integer room, LocalDate date);

public Iterabl<Integer> getAvailableRooms(LocalDate date);
}

Iterable 如何成为返回类型以及如何使用它?是否假设返回一个 Iterable 对象或任何子类,例如 List?

【问题讨论】:

  • 您需要返回 somethingIterable&lt;Integer&gt;

标签: java iterable


【解决方案1】:

这是一个接口。它可以返回实现该接口的任何类,并且您可以使用接口提供的方法使用响应(您必须强制转换它才能获取其他类提供的方法)。更多信息请查阅多态性。

public class BookingManagerImpl implements BookingManager {
 // other methods
  @Override
  public Iterable<Integer> getAvailableRooms(LocalDate date) {
    List<Integer> rooms = new ArrayList<>();
    // add rooms as needed
    return rooms;
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-23
    • 2019-07-02
    • 2012-03-23
    • 1970-01-01
    • 2022-09-29
    • 2021-04-22
    • 2012-05-21
    • 2013-12-19
    相关资源
    最近更新 更多