泛型
书上嫖来的代码感觉对泛型的通配符限制理解很轻松看完
import java.util.*;
import java.lang.*;
public class fx_test<T extends List> {
public static void main(String[] args){
fx_test<? extends List> fx = null;
fx = new fx_test<ArrayList>();
fx = new fx_test<LinkedList>();
List lt = new ArrayList();
lt.add(1);
List<?> l2 = lt;
System.out.println(lt.get(0));
System.out.println(l2.get(0));
}
}
下面代码基操
常用的泛型集合
刚好把集合的迭代器遍历在复习了一遍
import java.util.ArrayList;
import java.util.HashMap;
import java.util.*;
public class list_test<T> {
private T arr[];
public void set(T[] arr){
this.arr=arr;
}
public T[] get(){
return arr;
}
public static void main(String[] args){
System.out.println("-------数组的泛型-------");
list_test<String> s = new list_test<String>();
String arr[]={"wqwe","qweq"};
s.set(arr);
for(int i =0;i<arr.length;i++){
System.out.println(s.get()[i]);
}
System.out.println("-------arraylist泛型-------");
ArrayList<Integer> arry = new ArrayList<Integer>();
arry.add(1);
arry.add(2);
Iterator arrit = arry.iterator();
while (arrit.hasNext()){
System.out.println(arrit.next());
}
System.out.println("-------hashmap泛型-------");
Map<Integer, String> hm = new HashMap<Integer, String>();
hm.put(1,"qwe");
hm.put(2,"rqq");
Set hst = hm.keySet();
Iterator hit = hst.iterator();
while (hit.hasNext()){
int str =(int)hit.next();
String name =hm.get(str);
System.out.println(name);
}
}
}
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b2203bf855a3fcafa5a9319de06931a3.gif)