【问题标题】:Passing an ArrayList or creating a new one? [closed]传递一个 ArrayList 还是创建一个新的? [关闭]
【发布时间】:2021-06-14 10:13:04
【问题描述】:

我正在构建一个应用程序,在该应用程序中,我在每个 Activity 中创建相同的 ArrayList。另一种选择是在第一个 Activity 中创建 ArrayList,然后将其传递给其他 Activity。但是,我不知道这是否比每次创建相同的 ArrayList 更好。我知道通过创建一个新的 ArrayList 会占用一些内存(ArrayList 并没有那么大),但是通过使用 Intent 传递一个 ArrayList 会减慢您的应用程序的速度,对吧?

最好的选择是什么?

诚挚的问候, 科恩

【问题讨论】:

  • 传递数组列表。您不会传递实际的数组列表,它始终是引用。
  • but passing an ArrayList by using an Intent slows your app down, right? 如果是这种情况,为什么谷歌仍然允许这样做?如果它那么糟糕,它现在不会被弃用吗?您正在尝试在这里进行过早的优化,实际上,这些都不会产生影响。选择对你最有意义的东西
  • it will be the reference always 没有。@Pirate。首先将列表复制到意图。然后在接收方从意图中提取列表。然后在内存中有三个完整的列表。
  • 我对 java 列表发表了评论。 @bla

标签: java android arraylist android-intent initializing


【解决方案1】:

您可以简单地在自定义Application 类中创建一个ArrayList 并在每个Activity 中使用它

【讨论】:

    【解决方案2】:

    为什么不尝试在系统范围内提供 Arraylist?

    例如,这可能是一个选项:Android global variable

    【讨论】:

      【解决方案3】:

      java中的Arraylist是引用变量,所以传递一个arrayList比每次都创建更好,除非你对它没有任何写操作,否则会给你不一致的结果,

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-02-11
        • 2022-06-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-28
        • 1970-01-01
        相关资源
        最近更新 更多