在Google Guava(Java)中,为什么Iterables.getFirst()和getLast()不一致?
来自Google Guava JavaDoc for Iterables
:
static T getFirst(Iterable iterable, T defaultValue)
– >如果iterable为空,则返回iterable
或defaultValue
中的第一个元素。
static T getLast(Iterable iterable)
– >返回iterable
的最后一个元素。
static T getLast(Iterable iterable, T defaultValue)
– >如果iterable为空,则返回iterable
或defaultValue
的最后一个元素。
缺少一种静态方法(对我而言):
static T getFirst(Iterable iterable)
– >返回iterable
的第一个元素。
你知道这种不一致的原因吗?
因为它太简单了,无法certificate辅助方法的合理性。 该方法只是iterable.iterator().next()
并且具有与getLast()
完全类似的行为。