java - 是否可以将元素添加到 SparseArray 的前面?
问题描述
我尝试将一个稀疏数组克隆到一个临时数组中,并在将临时 SparseArray 添加回原始数组之前清除原始数组,但是因为查找是二进制的,似乎不起作用。有什么方法可以做到这一点,还是我需要查看替代映射结构?我将数组作为 JSONArray 存储到 JSON 文件中,但我不确定如何使用通用映射来做到这一点。
有关 SparseArrays 和作为二进制搜索的查找函数的信息就在这里:https ://developer.android.com/reference/android/util/SparseArray 。所以我问是否可以将元素添加到 SparseArray 的开头而不是结尾。这似乎是不可能的,所以我想知道是否有另一种有效的映射结构可以轻松地存储在 JSON 文件中,并允许我将元素添加到数据结构的前面。下面是一些我想如何存储数据结构的示例代码:
SparseArray<String> sparse = new SparseArray<>();
//Populate list...
JSONObject ListObject = new JSONObject();
ListObject.put("ListData", sparse);
这就是我从 JSON 文件中读取数据映射结构的方式(我不相信我可以用 HashMap 做到这一点):
JSONObject temp = new JSONObject();
sparse = readJSONArray(temp.getJSONArray("ListData"));
解决方案
推荐阅读
- python - 使用开发人员信息引发异常的正确方法
- .net - 自定义 Winforms 设计器控件同时缩放和平移控件
- server - 如何访问云服务器上基于桌面的应用程序
- spring-data-jpa - Spring JPA 组合查询,每个查询具有不同的排序
- azure-devops - AzureDevops 静态网站未从私有源中找到 NuGet 包
- java - 如何在 Android Studio 生成的二维码中添加保存图像?
- material-ui - 是否可以在鼠标悬停时将工具提示添加到材质 ui 自动完成组件?
- windows - 链接到颤动中的按钮
- transactions - 如何在我的网络应用程序中实施更便宜的银行账户经常性借记?
- android - 获取您的 Android 模拟器时出了点问题!确保您的路径正确 VS Code