我收到以下异常。
原因:
java.lang.ClassCastException: java.math.BigInteger cannot be cast to 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
值。
关于java.math.BigInteger 不能转换为 java.lang.Integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9510982/