我可以在Kotlin数据类中创建泛型吗?

问题描述 投票:1回答:1

我有一个后端,它将始终返回带有某些数据的“成功”,因为在json字段中,字段将被命名为成功并在其中包含数据。否则它将以json格式返回错误对象。所以我想拥有某种BaseResponse,所以当我使用它时,我可以做一些类似BaseResponse的事情,这样成功就可以映射为Person对象。

所以我正在考虑这样做:

@Parcelize
data class BaseResponse<T>(
     val success: T? = null
) : Parcelable

但是它表示Parcelize不直接支持Type。我有什么办法可以做到这一点?还是我需要写一些习惯?使用Retrofit和Gson作为序列化器调用这些调用等。

generics kotlin parcelable data-class
1个回答
4
投票

您可以通过要求TParcelable的实现来这样做,就像这样:

@Parcelize
data class BaseResponse<T: Parcelable>(val success: T? = null) : Parcelable
© www.soinside.com 2019 - 2024. All rights reserved.