Kotlin通用的虚无和价值

时间:2018-10-19 08:24:42

标签: generics kotlin

在Kotlin中,有没有一种方法可以传递也可以与Void类型一起使用的泛型类型?

我想传递一个Task<*>,它可以具有Void或有效的Credential对象类型。

如何修改构造函数 class TaskWrapperImpl(private val task: Task<Any>) {}

这是我使用此类的方式:

val taskWrapper = TaskWrapperImpl(googleSignInClient.signOut())

googleSignInClient.signOut()返回Task<Void!>!

2 个答案:

答案 0 :(得分:0)

您可以通过以下方式使用Unit

class TaskWrapperImpl(private val task: Task<Unit>) {}

答案 1 :(得分:0)

我找到了一种方法,下面的代码就是我想要的:

class TaskWrapperImpl <T> constructor(task: Task<T>)