java - 如何将Stack保存到SharedPreferences?

标签 java android stack

在我的 Android 应用程序中,我有一个自定义字符串堆栈,它扩展了 Stack 。我想将堆栈保存到 SharedPreferences 并从 SharedPreferences 中检索它。

我知道如何将堆栈转换为 ArrayList,但我读到 SharedPreferences 仅支持集合而不支持列表。那么如何将堆栈保存到 SP,同时保留其顺序呢?如何从 SharedPreferences 中检索它并重建堆栈?

我真的不知道如何解决这个问题。任何指向正确方向的指针都会受到高度赞赏 - 我不要求代码转储答案。

最佳答案

根据之前的评论:

您可能需要将 Stack 序列化/反序列化为字符串表示形式,然后可以将其存储在 SharedPreferences 中。

可能可以(ab)使用 json 格式来实现此目的,但它不能保证结果中各个元素的顺序。不过,包含每个元素的“位置”应该很容易,然后您可以在反序列化后使用它对元素进行排序。

或者,您可以提出自己的结构。

关于java - 如何将Stack保存到SharedPreferences?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14150509/

相关文章:

ssl - Java 客户端无法与服务器建立 SSL 握手

java - 如何在 Android 中执行使用 fragment 正确更新 UI 的后台操作?

R通过时间维度堆叠栅格数据

linux - 运行一个大小为 "Unlimited Stack"的应用会有什么影响?

css - 菜单在 IE7 中随机出现/消失

java - 如何将 JComboBox(Object[] items) 添加到 jComboBox1.addItem(String items);

java - Java 中的窗口应用程序

java - 删除 TextView 内容时禁用按钮

android - 有没有一种简单的方法来检查两个 ImageViews 是否发生碰撞?

android - 如何让build.gradle支持多国语言?