【发布时间】:2018-03-03 20:25:26
【问题描述】:
如何从通用collection 中获取通用array?
我做了以下事情:
val genericArray: Array<E> = (genericCollection as java.util.Collection<E>).toArray() as Array<E>
这是正确的方法还是有更优雅的解决方案?
期待您的帮助!
编辑
我最终编写了这个辅助扩展:
fun <E> Collection<E>.toUntypedArray(): Array<E> {
@Suppress("UNCHECKED_CAST")
return arrayOf(size, this) as Array<E>
}
你们中有人有更好的解决方案吗?
【问题讨论】:
-
public actual inline fun <reified T> Collection<T>.toTypedArray(): Array<T>有什么问题? -
这样可以吗?
listOf("one", "two").toTypedArray<Any>()如果不是,我不知道你到底想在这里实现什么......
标签: arrays generics collections kotlin