gpt4 book ai didi

java - 在方法java中进行转换

转载 作者:行者123 更新时间:2023-11-30 10:19:25 25 4
gpt4 key购买 nike

<分区>

我对 toArray 方法有疑问。在此示例中,我使用 Integer 并通过转换 Integer 来解决它,但该方法应该适用于所有类型,而无需在 main 中进行转换。

为什么我不能在我的主要方法中使用这两个中的一个?

arr = (T[]) a.toArray(arr) ;

甚至

arr = a.toArray(arr) 

我遇到类型不匹配:无法从对象[] 转换为整数[]

size() 和 addFirst() 都有效。

public static void main(String[] args) {

ArrayDeque a = new ArrayDeque(5);
a.addFirst(1);
a.addFirst(2);

Integer [] arr = new Integer[a.size()];
arr= (Integer[]) a.toArray(arr);
System.out.println(Arrays.toString(arr));
}



public class ArrayDeque<E> implements IDeque<E> {

private int counter= 0;
private E[] deque;

@SuppressWarnings("unchecked")
public ArrayDeque(int size) {
deque = (E[]) new Object[size];
}


public <E> E[] toArray(E[] a) {
return (E[]) Arrays.copyOf(deque, counter, a.getClass());
}

}

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