如何在 onSaveInstanceState() 中存储堆栈?

How To store a stack in onSaveInstanceState()?

我的 Activity 中有一堆 int,但当屏幕旋转时它变空了。 我搜索了一下,找到了 onSaveInstanceState 但似乎我不能以这种方式存储堆栈?它仅适用于主要变量类型,对吗? 我应该怎么办 ?有什么想法吗?

Stack 是一个 class 实现了 Serializable 接口。

所以你可以使用

outState.putSerializable("stack", stack);

将堆栈存储在 onSaveInstanceState(Bundle outState) 中并通过

检索堆栈
Stack<Integer> stack=(Stack<Integer>) savedInstanceState.getSerializable("stack");