gpt4 book ai didi

java - 将对象数组转换为整数数组错误

转载 作者:行者123 更新时间:2023-12-01 16:53:11 24 4
gpt4 key购买 nike

下面的代码有什么问题吗?

Object[] a = new Object[1];
Integer b=1;
a[0]=b;
Integer[] c = (Integer[]) a;

代码最后一行有以下错误:

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Integer;

最佳答案

Ross,你也可以使用 Arrays.copyof() 或 Arrays.copyOfRange()。

Integer[] integerArray = Arrays.copyOf(a, a.length, Integer[].class);
Integer[] integerArray = Arrays.copyOfRange(a, 0, a.length, Integer[].class);

这里遇到 ClassCastException 的原因是您不能将 Integer 数组视为 Object 数组。 Integer[]Object[] 的子类型,但 Object[] 不是 Integer[]

并且以下内容也不会给出 ClassCastException

Object[] a = new Integer[1];
Integer b=1;
a[0]=b;
Integer[] c = (Integer[]) a;

关于java - 将对象数组转换为整数数组错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61645788/

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