gpt4 book ai didi

java.lang.ClassCastException : java. lang.Integer 无法转换为 java.lang.Double

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:29:15 35 4
gpt4 key购买 nike

我在运行时遇到问题来编译这段代码,这给我一个错误,java.lang.Integer 无法转换为 Java.lang.Double。如果有人帮助我更正此代码,我将非常高兴

 double x;

public Double getMethod() {

HashMap hashmap= new HashMap();

hashmap = SumCal();

List listabc = (List) hashmap.get("abclist");
int total=(Integer) hashmap.get("all_total");
x = (Double) listabc.get(0)*100/total;
return x;
}

最佳答案

你可以按照下面的方式做,但我建议你使用 Generics .

x = ((Integer) listabc.get(0) * 100 / total);

如果您使用了如下所示的泛型,则不需要任何转换。

List<Integer> listabc 
HashMap<String, Integer> hashmap
x = listabc.get(0) * 100 / total;

在这种情况下,您不需要任何转换。引入 Integer、Double 等包装类的原因之一是避免转换。

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

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