我有如下代码
Map data = result?.data as Map
data.eachWithIndex { dataItem, idx ->
if (dataItem) {log.info dataItem}}
我这里的问题是data.eachWithIndex { dataItem, idx ->
的代码部分。有时候,这很完美,有时会抛出错误
2018-10-15 10:07:31,569 [quartzScheduler_Worker-1]错误 listeners.ExceptionPrinterJobListener-作业中发生异常: Grails作业消息:groovy.lang.MissingMethodException:无签名 方法:java.util.ArrayList.entrySet()适用于参数 类型:()值:[]可能的解决方案:toSet(),toSet(), intersect(java.lang.Iterable),intersect(java.lang.Iterable), intersect(java.util.Collection),every()
我检查了所有情况下,data
始终具有相同的值,并且永远不会为空。
请告知这里可能是什么问题?
答案 0 :(得分:1)
结果?.data 是列表的实例(查看“ as Map”操作后的数据类,它变为ArrayList1_groovyProxy ...) 您可以遍历列表(并根据需要构建地图):
$(document).ready(function () {
$(".hehe").click(function () {
var price=parseFloat($(".pPrice1").text()).toFixed(2);
var quantity=parseFloat($(".quan1").val()).toFixed(2);
var total=parseFloat(price*quantity).toFixed(2);
$(".xx").append("<tr>" +
"<td>" + $(".pName1").text() + "</td>" +
"<td>" + price + "</td>" +
"<td>" + quantity + "</td>"
+ "<td>" + total + "</td>" +
+ "</tr>")
});
});
如果这种情况不时发生-可能您的结果?.data 有时已经作为列表出现,有时已经作为地图出现