JAVA#泛型'学习札记

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]

猜你喜欢

转载自blog.csdn.net/Iverson941112/article/details/82454808