1.什么是泛型
泛型就是不确定的数据类型
2.为什么要使用泛型
在我们之前没有使用泛型在操作时需要进行强转
List list=new ArrayList();//该集合没有使用泛型
list.add("java01");
list.add("java02");
String str= (String) list.get(0);//获取元素 需要进行强制类型转换
System.out.println(str);
3.怎样使用泛型
HashMap<String,Integer> map = new HashMap<>();
public static void main(String[] args) {
List list = new ArrayList();
list.add("java01");
list.add("java02");
list.add("java03");
list.add("java04");
System.out.println(list);
HashMap<String,Integer> map = new HashMap<>();
map.put("name",22);
map.put("age",20);
System.out.println(map);
}
4.自己定义泛型
Point类,泛型实现类
public class Point<T> {
private T x;
private T y;
public void show(){
System.out.println("x轴的坐标为:"+x+" y轴的坐标为:"+y);
}
public T getX() {
return x;
}
public void setX(T x) {
this.x = x;
}
public T getY() {
return y;
}
public void setY(T y) {
this.y = y;
}
}
Test测试
public static void main(String[] args) {
Point p1 = new Point();//未使用泛型
p1.setX(15);
p1.setY("北纬50度");
//p1.show();
Point<Integer> p2 = new Point();
p2.setX(15);
p2.setY(50);
//p2.show();
}