java - 如何在不同的 Activity 中使用相同的 ArrayList(Android 和 Java)

标签 java android arraylist android-activity

我正在开发一个小应用程序,需要一种制作方法,以便在按下按钮时打开一个随机 Activity ,然后不再打开该 Activity 。

我通过制作一个随机排序的 ArrayList 并从中选择一个数字来做到这一点。然后删除该号码。然后使用选择的数字打开其中一项 Activity 。

但是,当我进行另一个 Activity 时,我无法使用之前的相同 ArrayList(所有相同的数字)。

有没有办法将 ArrayList 从一个 Activity 移动到另一个 Activity ?

提前致谢!

这是我制作 ArrayList 并选择一个数字的代码:

                int min = 1;
                int max = 3;
                ArrayList<Integer> list = new ArrayList<Integer>();
                for(int i = min; i <= max; i++) list.add(i);
                Collections.shuffle(list);

                Integer x = list.get(0);
                list.remove(0); 

最佳答案

您可以在您的 startActivity Intent (intent.putExtra) 中传递它,或者您可以在您的应用程序类中使用静态变量:

How to declare global variables in Android?

对于传递带有 Intent 的 ArrayList,这是一篇非常有用的帖子:

Pass arraylist of user defined objects to Intent android

基本上,如果您使用所有基元,您可以传递它们而无需创建可打包对象放入其中。您也不必创建 parcelable 对象(因为不扩展或实现 parcelable 的对象无法在 Intent 中成功传递,即使您不会看到任何错误)。

关于java - 如何在不同的 Activity 中使用相同的 ArrayList(Android 和 Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21211284/

相关文章:

java - 通过从数据库获取邮件结构在JAVA中发送邮件

java - JTextPane 追加 HTML 字符串

java - 按特定规则对对象的 List<T> 进行排序?

java - Resteasy 客户端抛出异常

java - 在 onCreate() 中定义 UI 变量并覆盖方法

android - android中的AlertDialog错误

android - "light-weight"协程如何真正适用于真实世界的 Android 开发?

android - 有时音乐不会停止 android

c# - 如何在 List<object> c# 中获取数组项

java - 在不使用库的情况下从数组列表中删除元素。 java