1.泛型中不能写基本数据类型
2.指定泛型后,传递数据时,可以传入该类型或者其子类类型
3.如果不写泛型,默认时Object类型

java
public class MyArrayList<E> {
Object[] obj = new Object[10];
int size;
/*
* E:表示不确定的数据类型
* e:形参的名字,变量名字
* */
public boolean add(E e){
obj[size] = e;
size++;
return true;
}
public E get(int index){
return (E)obj[index];
}
@Override
public String toString() {
return Arrays.toString(obj);
}
}
java
public class Myttest {
static void main() {
MyArrayList<String> list = new MyArrayList<>();
list.add("aaa");
list.add("bbb");
System.out.println(list);
MyArrayList<Integer> list2 = new MyArrayList<>();
list2.add(1);
list2.add(2);
System.out.println(list2);
}
}


泛型方法的定义及使用:
java
import java.util.ArrayList;
public class Utils {
private Utils(){}
public static<E> void addAll(ArrayList<E> list,E...e){
for (E element : e) {
list.add(element);
}
}
}
java
import java.util.ArrayList;
public class UT {
static void main() {
ArrayList<Integer> list = new ArrayList<>();
Utils.addAll(list,1,2,3,4);
System.out.println(list);
}
}
泛型接口的定义及使用:
1.
2.接口直接写入特定的泛型(已知类型)
