理解:List list = new ArrayList();
1.list的使用:
public class GenericTest {
public static void main(String[] args) {
List list = new ArrayList();
list.add("qqyumidi");
list.add("corn");
list.add(100);
for (int i = 0; i < list.size(); i++) {
String name = (String) list.get(i);
System.out.println("name:" + name);
}
}
}
List反映出来的问题:
在list遍历的时候明显可以看出需要先将数据转换成string类型才能输出 然而问题是我们并不知道他是什么类型的。然而泛型就能很好的解决这个问题。
2.List 泛型
public class GenericTest {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("qqyumidi");
list.add("corn");
//list.add(100); //此处会报错,原因是在定义列表对象时就已经声明了这是一个字符串类型的列表,所以不可以在里面添加整形的数据
for (int i = 0; i < list.size(); i++) {
String name = list.get(i);
System.out.println("name:" + name);
}
}
}
3.在类和方法中使用泛型
public class GenericTest {
public static void main(String[] args) {
Box<String> name = new Box<String>("corn");
System.out.println("name:" + name.getData());
}
}
//T相当于形参
class Box<T> {
private T data;
public Box(T data) {
this.data = data;
}
public T getData() {
return data;
}
}