android 在本地内存中存储自定义数组列表的更好方法

Which is a better way to store custom array list in local memory in android

我已经用过SharedPreferences。但我想找到更好的方法来保存和检索 android 中的 Arraylist。

我曾尝试在 SQLite 中保存详细信息,但 sqlite 仅用于结构化详细信息。我很困惑哪个本地存储是 Arraylist 的正确方式。

请给出我们必须在哪种情况下使用的正确理由。

是的,如果你有多个字段的长数据,那么你必须存储在 SQLite 数据库中。在 SQLite 数据库中,不需要在数据库中创建多个字段,只需将 ArrayList 转换为字符串并存储到数据库中即可。当您以字符串形式从数据库中检索数据时,将字符串转换为 ArralyList。这是在本地存储数据的简单、安全和最快的方法。

class的ArrayList的约定字符串和class的ArrayList的字符串你应该使用GSON。

编码愉快....

您可以同时使用 SharedPreferencesSQLite。要保存将您的 arraylist 转换为 json 像这样

Gson gson = new Gson();
String yourJsonString = gson.toJson(arrayList);

并检索

Gson gson = new Gson();
Type type = new TypeToken<ArrayList<YourObject>>() {}.getType();
ArrayList<YourObject> arrayList =  gson.fromJson(yourJsonString, type);