Android中将HashMap<String, List<String>>从一个Activity传递到另一个Activity
时间: 2023-06-18 15:03:34 浏览: 229
在Android中,可以使用Intent来传递数据。对于HashMap<String, List<String>>,可以将其转换为Serializable对象,并将其添加到Intent中,然后在另一个Activity中获取该对象。具体步骤如下:
1. 在第一个Activity中,创建一个HashMap<String, List<String>>对象,并将其转换为Serializable对象:
```
HashMap<String, List<String>> hashMap = new HashMap<String, List<String>>();
// 将数据添加到HashMap中
hashMap.put("key1", Arrays.asList("value1", "value2", "value3"));
hashMap.put("key2", Arrays.asList("value4", "value5", "value6"));
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra("hashMap", hashMap);
```
2. 在第二个Activity中,获取传递的Serializable对象,并将其转换为HashMap<String, List<String>>对象:
```
Intent intent = getIntent();
HashMap<String, List<String>> hashMap = (HashMap<String, List<String>>) intent.getSerializableExtra("hashMap");
// 使用获得的HashMap对象进行操作
List<String> values = hashMap.get("key1");
```
注意:为了确保传递的数据类型正确,需要在传递和接收数据的Activity中使用相同的key。
阅读全文