gpt4 book ai didi

java.lang.Long 无法转换为 java.math.BigInteger

转载 作者:行者123 更新时间:2023-12-02 13:00:42 25 4
gpt4 key购买 nike

我的程序有一个方法可以获取特定行的计数并将其转换为 BigInteger:

private BigInteger getSameSatPremise(ServiceAgreement sa) {
BigInteger count = BigInteger.ZERO;

StringBuffer queryHql = new StringBuffer();
queryHql.append("from Table t1");
Query query = createQuery(queryHql.toString());
query.addResult("count", "count(distinct t1.column1)");
if (query.listSize() > 0) {
count = (BigInteger) query.firstRow();
}
return count;
}

当查询结果为 0 时,转换工作正常。但是当查询结果为 2 时,我收到如下所示的转换错误。

Caused by: java.lang.ClassCastException: java.lang.Long cannot be cast to java.math.BigInteger

谁能帮忙。

最佳答案

Java 不是 C++,您无法编写自己的转换运算符。

在 Java 中,您需要使用显式函数来完成您想要的操作。在你的情况下,这是相当详细的

BigInteger.valueOf(query.firstRow())

关于java.lang.Long 无法转换为 java.math.BigInteger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36449889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com