我想在activities 之间传递 LinkedHashMap,代码如下:
Activity A
LinkedHashMap mLinkedHashMap = new LinkedHashMap<String, Object>();
// setting data in map
Bundle bundle = new Bundle();
bundle.putSerializable("OBJECTS_LINKED_HASHMAP", mLinkedHashMap);
Intent intent = new Intent(this, ActivityB.class);
intent.putExtras(bundle);
startActivity(intent);
在 Activity 中当接受包对象时,却获取"Class cast exception" 错误信息
Activity B
Bundle bundle = this.getIntent().getExtras();
LinkedHashMap mLinkedHashMap = new LinkedHashMap<String, Object>();
mLinkedHashMap = (LinkedHashMap<String, Object>) bundle.getSerializable("OBJECTS_LINKED_HASHMAP");
获得异常:
ClassCastException: java.util.HashMap cannot be cast to LinkedHashMap
我查相关资料得知 LinkedHashMap 也实现 Serializable 接口。
我使用 LinkedHashMap 保持对象的顺序。
在 Activity 之间如何传递 LinkedHashMap?