Android 房间列表或可变列表返回类型

标签 android list kotlin mutable

我只是想知道关于房间查询返回类型是否有任何约定?用List返回比较好还是用MutableList返回比较好? 在 Kotlin 中通过 .toList() 和 .toMutableList() 进行转换非常容易。我只是想创建一个方便使用的代码,这就是我询问最佳实践的原因。

为了看得清楚,我正在谈论这些查询:

@Query("SELECT * FROM measured_attribute WHERE deliveryStatus = :status LIMIT 1000")
fun getAttributeEntityListByStatus(status: DeliveryStatus): List<MeasuredAttributeEntity>

@Query("SELECT * FROM measured_attribute WHERE 
  name = :speific AND 
  fk_patient = :id AND 
  creationTime>:beginTime ORDER BY creationTime")

fun getSpecificAttributeEntity(
   speific: String, 
   id: Long, 
   beginTime: Long
   ): MutableList<MeasuredAttributeEntity>

最佳答案

Room 将为结果创建一个 java.util.ArrayList (您可以通过在构建项目后跳转到 Dao 的实现来检查这一点),因此您可以在此使用任一返回类型在这种情况下,ArrayList 实现了这两个接口(interface)。一般来说,Kotlin 中的最佳实践是使用只读的 List,只要你能摆脱它,所以我建议这样做。

关于Android 房间列表或可变列表返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54646320/

相关文章:

android - 我们应该使用哪个应用程序进行 Paypal 付款?

python - 当条件为非 bool 值时,如何在列表理解中使用 "else"?

android - 如何使用 Android ViewModel 实现 Arrow Kt?

android - 如何在 android 列表适配器中引用 fragment

android - Exoplayer 2 Player 无法恢复播放

安卓 fragment : container variable in onCreateView is null

c# - 复制列表到其他列表

c++ - 使用 `Node*` 作为列表的迭代器

java - Spring Data JPA,当我尝试选择DistinctValue时出错

regex - 如何通过正则表达式在 kotlin 中匹配双引号中的字符串