Java泛型

E-Element(在集合中使用,因为集合中存放的是元素)

示例:

public class 泛型E {

    public static void main(String[] args) {
        Integer[] stringArray = {1,2,3,4,5,6,7};
        printArray(stringArray);
    }

    /**
     *
     */
    public static <E> void printArray(E[] inputArray) {
        //输出数组元素
        for (E result : inputArray) {
            System.out.println("结果:"+ result);
        }
    }
}

在这里插入图片描述

T-Type(Java类)

例一:

public class 泛型T {
    public static void main(String[] args) {
        System.out.println("最大值:"+ maximum(3,4,5));
    }

    public static <T extends Comparable<T>> T maximum(T x, T y, T z) {
        //假设x是初始最大值
        T max = x;
        //y更大
        if (y.compareTo(max) > 0) {
            max = y;
        }
        //z更大
        if (z.compareTo(max)>0){
            max = z;
        }
        return max;
    }
}

在这里插入图片描述

例二:

public class 泛型T1 {
    public static void main(String[] args) {
        Box<Integer> integerBox = new Box<Integer>();
        Integer method = integerBox.method(new Integer(10));
        System.out.println(method);
        //System.out.println(integerBox.get());

        Box<String> stringBox = new Box<String>();
        Integer zhangSan = stringBox.method(new String("zhangSan"));
        System.out.println(zhangSan);
        //System.out.println(stringBox.get());
    }
}

class Box<T> {
    private T t;

    public Integer method(T t){
        Integer as = 0;
        if (t.equals("zhangSan")){
            as = 1;
        }
        if (t.equals(10)){
            as = 2;
        }
        return as;
    }

    public void add(T t){
        this.t = t;
    }


//    public void add(T t) {
//        this.t = t;
//    }

    public T get() {
        return t;

    }
}

在这里插入图片描述
例三:

package com.zzx.泛型.T;

/**
 * @Author Zhengzx
 * @Date 2022/9/8 16:01
 * @Title
 * @Version 1.0
 */
public class People extends model<People>{
    private String phone;

    private String address;

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "People{" +
                "phone='" + phone + '\'' +
                ", address='" + address + '\'' +
                '}';
    }
}


class model<T>{
    private String id;
    private String name;
    private String age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
}

class test {
    public static void main(String[] args) {
        People people = new People();
        people.setId("11");
        people.setName("张三");
        people.setAge("23");
        people.setPhone("110");
        people.setAddress("五道口男子职业技术学院");
        System.out.println(people.toString());
    }
}

在这里插入图片描述

?-类型通配符

public class 类型通配符 {
    public static void main(String[] args) {
        List<Integer> integerList = new ArrayList<>();
        List<String> stringList = new ArrayList<>();
        List<Number> numberList = new ArrayList<>();
        integerList.add(1);
        stringList.add("哈哈");
        numberList.add(314);

        getData(integerList);
        getData(stringList);
        getData(numberList);
    }

    public static void getData(List<?> data){
        System.out.println("data:" + data.get(0));
    }

}

在这里插入图片描述

K,V 借鉴Map

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小郑要做干饭人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值