我收到以下异常。
造成原因:
java.lang.ClassCastException:无法将java.math.BigInteger强制转换为java.lang.Integer
用下面的代码
List queryResult = query.list(); for (Iterator<Object[]> it = queryResult.iterator(); it.hasNext();) { Object[] result = it.next(); Integer childId = (Integer) result[0]; Integer grandChildCount = (Integer) result[1]; CompanyNode childNode = childNodes.get(childId); childNode.setHasChildren(grandChildCount != 0); childNode.setIsLeaf(grandChildCount == 0); }
在这条线
Integer grandChildCount = (Integer) result[1];
有人知道吗?
您可以使用:
Integer grandChildCount = ((BigInteger) result[1]).intValue();
或者也许Number覆盖了Integer和BigInteger价值观。
Number
Integer
BigInteger