gpt4 book ai didi

java - 为什么没有 getFirst(iterable) 方法?

转载 作者:IT老高 更新时间:2023-10-28 20:53:31 24 4
gpt4 key购买 nike

IterablesgetLast

提供两种方法
 public static <T> T getLast(Iterable<T> iterable);
public static <T> T getLast(Iterable<T> iterable, @Nullable T defaultValue);

但只有一个用于 getFirst

 public static <T> T getFirst(Iterable<T> iterable, @Nullable T defaultValue);

是否有任何破坏对称性的设计/实现原因?

最佳答案

我认为重点是没有理由使用 getFirst(iterable),因为这可以通过 iterable.iterator().next() 来完成。 Guava 做了一个很好的尝试来保持 API 很小,因此没有添加可以/应该以其他方式轻松完成的事情。

另一方面,目前还没有一种机制来测试可迭代对象是否为空,如果是则返回默认值而不是第一个值。因此,getFirst(iterable, default).

此外,没有简单的方法来获取最后一个元素,因此 getLast(iterable)getLast(iterable, default)

关于java - 为什么没有 getFirst(iterable) 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8473826/

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