当前位置: 首页 > 面试题库 >

无法将java.math.BigInteger强制转换为java.lang.Integer

江亮
2023-03-14
问题内容

我收到以下异常。

造成原因:

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覆盖了IntegerBigInteger价值观。



 类似资料:
  • 问题内容: 我想使用本机sql返回行数。但是控制台说我。怎么了?这是我的方法: 问题答案: 使用方法,而不是将其强制转换为: 好像返回。一种选择是强制转换为: 但是不要这样做。而是使用Nambari在评论中提供的方式。我不是Hibernate的用户,因此无法提供特定于Hibernate的解决方案。

  • 问题内容: 我有。我想使用获得最大结果。这是我的代码: 这是我的: 现在我得到了。怎么了? 问题答案: 您的错误可能在以下行中: 其中query.list()返回BigInteger列表而不是Long列表。尝试将其更改为。

  • 问题内容: 我有MainActivity类,该类具有实例化ApplicationBar的方法,所有其他Activity都从此继承,因此他们可以使用此方法。 但是我也有一个MapHolder类,它必须从xml中扩展,因为它使用来显示地图。问题是如果我从不显示ApplicationBar选项卡扩展它,并且从MainActivity扩展它而不显示地图,则出现此错误: 问题答案: 您正在尝试将a强制转换为

  • 问题内容: 我长期困扰这个问题。我有一段时间搜索此问题,但没有解决方案。 结构体: 我也用我 在我的。 请提供有关如何解决此问题的一些信息。 问题答案: 从中删除注释并使其: 发生您的问题是因为的特化,这意味着Spring将尝试创建注入实例。由于superclass()不是通用的,因此您无法将其向下转换为,因此这行代码将失败(与尝试使用手动实例化该代码的方式相同): 专业课仍应使用注释。当spri

  • 问题内容: 我有一个将对象作为输入的方法,如果输入是instanceOF Long,则将值转换为double值。下面是代码: 但是当我执行上面的代码时,我得到下面的异常: 请让我知道为什么它给了我例外。 但是,如果直接尝试将Long对象转换为double,则不会发生classCast异常。 这很混乱。 问题答案: 在JLS中找到了解释,请 参见表5.1 下的https://docs.oracle.

  • 问题内容: 我在用JAVA进行编码时出现atm错误,我一直在尝试修复此问题,还试图找到存在相同问题的其他ppl并修复了该问题,但无济于事。 好..这是代码 错误是: 问题答案: 要解决您的问题,您需要更改的BufferedImage类型 并将其更改为 问题是使用byte [3]表示每个像素, 仅使用一个整数