gpt4 book ai didi

java - 未经检查的强制转换泛型

转载 作者:行者123 更新时间:2023-12-01 15:51:58 24 4
gpt4 key购买 nike

在我的代码中我有
私有(private) E[] arrCirc;
在我的构造函数中,我有 arrCirc = (E[]) new Object[capacity];但是当我尝试编译它时,我收到警告:

[未选中]未选中的 Actor
发现:java.lang.Object
必填:E[]

错误,我不知道为什么。

public class Array12<E> implements LimCapList<E>{

private int size = 0;
private int capacity = 0;
private int front;
private int back;
private E[] arrCirc;

public Array12(int capacity){
if( capacity <= 0)
throw new IllegalArgumentException();
arrCirc = (E[]) new Object[capacity];
front = 0;
back = 1;
}

最佳答案

你能让你的arrCirc类型为Object[](就像openJDK中的大多数generic collections一样)吗?

(并执行arrCirc = new Object[capacity];)

否则对于警告,您可以使用 SupressWarning。

        @SuppressWarnings("unchecked")
public Array12(int capacity){
if( capacity <= 0)
throw new IllegalArgumentException();
arrCirc = (E[]) new Object[capacity];
front = 0;
back = 1;
}

关于java - 未经检查的强制转换泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5846265/

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