I am creating my own set class . But At the beginning , I take a warning. I use in this link How to create a generic array?. But I have already take warning.
This is my warning message:
MySet.java:11: warning: [unchecked] unchecked cast
data = (T[]) new Object[10];
^
required: T[]
found: Object[]
where T is a type-variable:
T extends Object declared in class MySet
1 warning
This is my beginner code:
Main.java
public class Main{
public static void main(String[] args){
MySet<Integer> a = new MySet<Integer>();
System.out.printf("empty or not = %d\n",a.empty());
}
}
MySetInterface.java
public interface MySetInterface<T> {
public int empty();
}
MySet.java
public class MySet<T> implements MySetInterface<T>{
private T[] data;
private int used;
private int capacity;
public MySet(){
used = 0;
capacity = 1024;
data = (T[]) new Object[10];
}
public int empty(){
if(used == 0){
return 1;
}
else{
return 0;
}
}
If I use
@SuppressWarnings("unchecked")
data = (T[]) new Object[10];
I take this error message now:
MySet.java:12: error: <identifier> expected
data = (T[]) new Object[10];
^
1 error