Map<Object, Object> datamap = new HashMap<>();for (int j = 0; j < typeList.size(); j++) { String typeName = typeList.get(j).getDsmType(); List<Object> dataList = new ArrayList<>(); for (int i = 0; i < list.size(); i++) { Map<Object, Object> dataMap = new HashMap<>(); dataMap.put("driverName", list.get(i).getDriverName()); dataMap.put("fatigue", list.get(i).getFatigue()); dataMap.put("callPhone", list.get(i).getCallPhone()); dataMap.put("smoke", list.get(i).getSmoke()); dataMap.put("overSpeed", list.get(i).getOverSpeed()); dataMap.put("overWeight", list.get(i).getOverWeight()); dataMap.put("overHeight", list.get(i).getOverHeight()); dataMap.put("noSeatBelt", list.get(i).getNoSeatBelt()); dataList.add(dataMap); } datamap.put(typeName, dataList);}
时间: 2024-04-04 16:34:36 浏览: 77
这段代码创建了一个HashMap,用于存储类型名称和每个类型对应的数据列表。数据列表中包含了每个数据对象的属性,如驾驶员名称、疲劳程度、是否接打电话、是否吸烟、是否超速、是否超载、是否超高、是否未系安全带等等。这个HashMap可以用于方便地管理和访问这些数据,并且可以根据类型名称进行分类、统计和分析。
相关问题
Map<String, String> dataMap = new HashMap<String, String>(),如何把dataMap转成string
将`Map<String, String>`类型的`dataMap`转换成字符串通常是为了方便打印、存储或在网络传输时展示数据。可以使用`toString()`方法或第三方库如`Gson`或`Jackson`进行序列化。这里是一个简单的例子:
```java
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 创建一个Map实例
Map<String, String> dataMap = new HashMap<>();
dataMap.put("key1", "value1");
dataMap.put("key2", "value2");
// 使用toString()方法转换为字符串
String mapAsString = dataMap.toString();
System.out.println("Map as string: " + mapAsString);
// 或者使用Gson库(需要引入gson依赖)
import com.google.gson.Gson;
Gson gson = new Gson();
String json = gson.toJson(dataMap);
System.out.println("JSON representation: " + json);
}
}
```
Map<String, Map<String, List<String>>> dataMap2 = new HashMap<String, Map<String, List<String>>>(map);怎么遍历
可以使用双重循环遍历,首先遍历外层的`Map`,获取每一个内层的`Map`,再遍历内层的`Map`,获取其中的`List`。
以下是示例代码:
```
for (Map.Entry<String, Map<String, List<String>>> entry : dataMap2.entrySet()) {
String key1 = entry.getKey();
Map<String, List<String>> map2 = entry.getValue();
for (Map.Entry<String, List<String>> entry2 : map2.entrySet()) {
String key2 = entry2.getKey();
List<String> list = entry2.getValue();
System.out.println("外层key:" + key1 + ",内层key:" + key2 + ",list:" + list);
}
}
```
其中,`entrySet()`方法可以获取`Map`中所有键值对的集合,每个键值对都是一个`Map.Entry`对象,包含了键和值两部分。通过`getKey()`方法可以获取键,通过`getValue()`方法可以获取值。因为内层的值是一个`Map`,所以需要再次使用`entrySet()`方法遍历内层的`Map`。
阅读全文