您需要在 RoomDao 中创建两个方法:
@Insert
void insert(List<Model1> list1);
@Insert
void insert(List<Model2> list2);
但是在这种情况下,它会突出显示第一个错误的方法,其中显示:
both methods have same erasure
如何纠正?
您需要在 RoomDao 中创建两个方法:
@Insert
void insert(List<Model1> list1);
@Insert
void insert(List<Model2> list2);
但是在这种情况下,它会突出显示第一个错误的方法,其中显示:
both methods have same erasure
如何纠正?
这就是所谓的结果。类型擦除(在这里阅读更多)。在泛型中编译
T后,它变成object(参见上面的链接),事实证明您有 2 个具有完全相同签名的方法。你可以很简单地修复它。您需要为每个模型创建一个单独
DAO的模型,而不是将不同的模型混合在一个模型中DAO。