【发布时间】:2012-09-11 13:30:57
【问题描述】:
我有一个 HashMap,我将把它传递给另一个 Activity 类。我只是使用这个代码:
HashMap<String, String> mKeyValues = new HashMap<String, String>();
// add some data to hash map
Intent intent = new Intent(MainActivity.this, SubActivity.class);
intent.putExtra(EXTRA_ENTRIES, mKeyValues);
这是可能的,因为 HashMap 已经实现了 Serializeable 接口。
现在的问题是,对于具有 100 个元素的 HashMap,这是否足够快,或者我是否应该更好地创建一个实现 Parcelable 接口的数据类(因为 Parcelable 要快得多?)?
是否有关于何时应使用 Parceable 接口的关于性能和其他方面的指南?
我没有发现将实现 Serializeable 的对象和实现 Parceable 的对象传递给另一个 Activity 的持续时间进行比较。
问候
【问题讨论】:
-
当然,您可以编写一个小型基准来比较您的 100 元素 HashMap 的 Parcelabel 和 Serializable 版本。经验证据永远是最好的证据:你不需要相信任何人的话;-)
标签: android android-intent android-activity parcelable