有一个Map<String,Map<String,String>>格式的对象传到前台,由于对前台不熟于是就在jsp里使用了java代码来呈现,
先用一个Map<String,Map<String,String>>接收了attribute,然后遍历这个map,每次用map2来接收value,然后再遍历map2,结果就悲剧了,原来map2中有一个value是数字,但实际上我已经在后台把他转为String了,哪儿知道struts又热心的给转为数字了,于是就报出了ClassCastException,说Long不能转为String,琢磨了好久,我用map2.get().toString也不行,原来是map2在声明的泛型处就有了问题,但是map2里面另一个String格式的double数据依旧保留了String,并且坑爹的是map的时候也有泛型为啥不报错?难倒jvm对泛型的检查只有一层?
时间: 2024-11-14 13:13:44