在Java中,由于类型擦除的原因,我们不能直接创建泛型数组。但是,我们可以通过一些技巧来实现泛型数组的使用。以下是一个示例:
首先,我们创建一个泛型类MyClass
:
public class MyClass<T> {
private T[] array;
@SuppressWarnings("unchecked")
public MyClass(int size) {
array = (T[]) new Object[size];
}
public void set(int index, T value) {
array[index] = value;
}
public T get(int index) {
return array[index];
}
}
在这个例子中,我们使用了类型擦除的警告,但是我们知道这个操作是安全的,因为我们知道数组中的元素类型。
然后,我们可以这样使用这个泛型类:
public class Main {
public static void main(String[] args) {
MyClass<Integer> myIntArray = new MyClass<>(10);
myIntArray.set(0, 1);
myIntArray.set(1, 2);
System.out.println(myIntArray.get(0)); // 输出 1
System.out.println(myIntArray.get(1)); // 输出 2
MyClass<String> myStringArray = new MyClass<>(5);
myStringArray.set(0, "Hello");
myStringArray.set(1, "World");
System.out.println(myStringArray.get(0)); // 输出 Hello
System.out.println(myStringArray.get(1)); // 输出 World
}
}
这样,我们就实现了泛型类与泛型数组的结合使用。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。