在 Google Guava (Java) 中,为什么 Iterables.getFirst() 和 getLast() 不一致?
来自 Google Guava JavaDoc for 可迭代
:
static <T> T getFirst(Iterable<T> iterable, T defaultValue)
->如果 iterable 为空,则返回 iterable
或 defaultValue
中的第一个元素。
static <T> T getLast(Iterable<T> iterable)
->返回iterable
的最后一个元素。
static <T> T getLast(Iterable<T> iterable, T defaultValue)
->如果 iterable 为空,则返回 iterable
或 defaultValue
的最后一个元素。
缺少一个静态方法(对我来说):
static <T> T getFirst(Iterable<T> iterable)
->返回可迭代的第一个元素。
你知道这种不一致的原因吗?
From Google Guava JavaDoc for Iterables
:
static <T> T getFirst(Iterable<T> iterable, T defaultValue)
-> Returns the first element in iterable
or defaultValue
if the iterable is empty.
static <T> T getLast(Iterable<T> iterable)
-> Returns the last element of iterable
.
static <T> T getLast(Iterable<T> iterable, T defaultValue)
-> Returns the last element of iterable
or defaultValue
if the iterable is empty.
One static method is missing (to me):
static <T> T getFirst(Iterable<T> iterable)
-> Returns the first element of iterable
.
Do you know the reason for this inconsistency?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
因为辅助方法太简单了。该方法只是 iterable.iterator().next() ,其行为与 getLast() 完全相同。
Because it's too simple to justify a helper method. The method would just be
iterable.iterator().next()
and would have behavior exactly analogous togetLast()
.