是正确地将hsahMap传递到存储库mvvm android



Hi是将HashMap右传给存储库中的函数

void sendComment(HashMap<String, String> data){
FirebaseDatabase.getInstance(). getRefrence().setValue(data);
}

在视图模型中,我创建了HashMap var,并像一样为其添加密钥和值

HashMap<String, String> data=new HashMap<>();
data.add("commentText","any text");
data.add("senderId","any text");
data.add("postId","any text");
repo.sendComment(data);

这是真的吗?还是应该添加参数senderId、postId、commentText在存储库中的功能中像

void sendComment(String postId,String senderId){
//Add to database code
}

首先,您可以使用SparseArray而不是HashMap。因为SparseArray的内存效率比HashMap高,因为它避免了自动装箱键,而且它的数据结构不依赖于每个映射的额外入口对象取决于你的任务。

SparseArray<Int>().set(key , value)

您可以使用存储库来更改要保存在DB中的任何对象(数据(,或者发送到服务器并更改要传递到ui和viewModel的任何对象。

相关内容

  • 没有找到相关文章

最新更新