我是Android新手,我想知道如何将数组保存到内存中。我不是指内部记忆,因为我知道共享偏好,外部存储和sqlite。我正在寻找RAM /堆范围内的东西。
实际的挑战是我有一个字符串数组。首次启动应用时,我从sqlite数据库中获取名称。
例如
String[] names = new String[] {"dave", "james", "tommy" }
此列表可以增长到超过10000个项目。
在另一项活动中,我想检查列表中是否存在某些名称。我不想来回查询数据库来实现这一点。这就是为什么我认为节省内存可能只是最好的选择,因为它可以提高性能。
所以我想知道如何将这个数组保存在内存中并在另一个活动中读取它。我已经知道如何管理我的RAM我只是想找到方法来获取这些信息并从中读取。
由于
答案 0 :(得分:1)
创建一个Singleton模式并将array
放入其中,然后您可以在应用实例中共享您的数组,但请记住这个singleton
课程将会被应用销毁,所以你会这样做吗?里面的数组。
这是单身人士的创作方式。
class Bar {
private static class ArrayHolder {
public static List<String> array = new ArrayList<>();
}
public static Bar getArray() {
return array;
}
}
每当您需要访问数组时,只需执行此操作ArrayHolder.getArray()