【发布时间】:2019-10-25 16:46:01
【问题描述】:
这两个功能很相似
fun <T> emptyList(): List<T> = emptyList<T>()
fun <T> emptySet(): Set<T> = emptySet<T>()
有什么方法可以将它们组合成一个返回空集或空列表的方法?如果调用者必须传递要返回的空集合,那很好。
理想情况下,我希望在调用者不需要求助于强制转换的情况下实现这一点,即使用as 或is。
【问题讨论】:
-
"如果调用者必须传递要返回的空集合,那很好。"如果他们手头已经有了这个集合,为什么他们需要一个返回它的方法?
fun <T> (x: T) = x在这种情况下可以使用,但这可能不是您想要的。 -
fun <T> empty(): Collection<T> = empty<T>() -
@QingfeiYuan 我想你的意思是
emptyList或emptySet在最后那个表达式中。