1.泛型在集合中应用:
public class Generator {
@Test
public void Bryant(){
Map<String,Integer> bean=new HashMap<String,Integer>();
bean.put("宋艺华",13);
bean.put("宋訫洳",33);
bean.put("宋梦妍",14);
bean.put("宋迪",22);
Set<Map.Entry<String,Integer>> kbset=bean.entrySet();
for(Map.Entry<String,Integer> obj:kbset){
System.out.println(obj.getKey()+"------->"+obj.getValue());
}
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
//定义泛型List集合,使得添加进List的元素只能是包装类Integer
List<Integer> kb24=new ArrayList<Integer>();
kb24.add(23);
kb24.add(24);
kb24.add(3);
kb24.add(999);
System.out.print(kb24);
}
}
宋梦妍------->14
宋訫洳------->33
宋艺华------->13
宋迪------->22
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
[23, 24, 3, 999]
2.自定义泛型类:
public class TestGnrcClss {
@Test
public void bty(){
GenrlClss<Boolean> gc=new GenrlClss();
gc.setK(true);
System.out.println(gc.getK());
gc.addToMM();
List list=gc.mm;
System.out.println(list);
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
GeneralClass generalClass=new GeneralClass();
generalClass.setK(233333) ;
generalClass.addToMM();
List<Integer> ll=generalClass.mm;
System.out.println(ll);
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
String k1=gc.getT("老科美如画");
Integer k2=gc.getT(24);
System.out.println(k1 + k2);
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$");
Integer[] integers=new Integer[]{23,3,24,1994,1112};
List tentative = new ArrayList();
List<Integer> integerList=gc.fromArrayToCllctn(integers,tentative);
System.out.println(integerList);
}
}
public class GenrlClss<K> {
private K k;
private String slam;
private int score;
List mm=new ArrayList();
public void addToMM(){
mm.add(k);
}
public K getK() {
return k;
}
public void setK(K k) {
this.k = k;
}
public void setScore(int score) {
this.score = score;
}
public int getScore() {
return score;
}
public void setSlam(String slam) {
this.slam = slam;
}
public String getSlam() {
return slam;
}
//
public <T> T getT(T t){
return t;
}
//
public <E> List<E> fromArrayToCllctn(E[] e,List<E> list){
for(E ee:e){
list.add(ee);
}
return list;
}
@Override
public String toString() {
return "[Name: "+this.getSlam()+" Score:"+this.getScore()+" 对象:"+this.getK()+"]";
}
}
class GeneralClass extends GenrlClss<Integer>{}
true
[true]
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
[233333]
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
老科美如画24
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
[23, 3, 24, 1994, 1112]