java 泛型

泛型什么鬼?为什么要引用泛型?

也不是那个瘪犊子发明泛型,导致我困惑了好久;引用泛型能干嘛,当让是偷懒了,为了让自己的代码看上去高大上点;当然他也是Java支持一种的规则。

思考:当初也不知道为什么,就是不懂泛型是什么,总是看着别人写,这样用,这样这样对就这样,你就学会了使用泛型,然而并没有未卵,所以决定自己写点自己看的明白的基础,弱鸡误喷。

1.泛型在方法中如何引用

思考:如果你不确定你给一个方法传参的类型,这个时候你就可以使用泛型

引用泛型首先你必须申明:

举个栗子:

//方法中使用泛型先声明
public <T> void Test(T t) {

}

//有返回参
public <T> T Tests(T t) {
    return t;
}
// 泛型方法 printArray
public static <E> void printArray(E[] aa) {
    // 输出数组元素
    for (E element : aa) {
        System.out.printf("%s ", element);
    }
    System.out.println();
}
//获取三个参数中的最大值,值的类型必须一直
public <T extends Comparable<T>> T maximum(T x, T y, T z) {
    T max = x; // 假设x是初始最大值
    if (y.compareTo(max) > 0) {
        max = y; //y 更大
    }
    if (z.compareTo(max) > 0) {
        max = z; // 现在 z 更大
    }
    return max; // 返回最大对象
}

2.泛型在类中如何引用

泛型么,类一样,如果这个类中有不确定参数类型,你就可以用泛型呀,像List类 Map类他们就是这么搞的呀

举个栗子吧:

NiHao niHao = new NiHao<>();
niHao.t = "这个坑货";
niHao.a = 23;
niHao.name = "这个世界不缺傻货";
System.out.println(niHao.toString());
NiHao<Integer> integerNiHao = new NiHao<>();
integerNiHao.t = 12;
integerNiHao.a = 15;
integerNiHao.name = "坑能多就不要少";
System.out.println(niHao.toString());
System.out.println(new NiHao<>("00", 12, "我来去,泛型其实就是这个鬼").toString());
//泛型类参数是为了传参的
private class NiHao<T> {

    private T t;
    private int a;
    private String name;

    public NiHao() {
    }

    public NiHao(T t, int a, String name) {
        this.t = t;
        this.a = a;
        this.name = name;
    }

    public T getT() {
        return t;
    }

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

    public int getA() {
        return a;
    }

    public void setA(int a) {
        this.a = a;
    }

    public String getName() {
        return name;
    }

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

    @Override
    public String toString() {
        return "NiHao{" +
                "t=" + t +
                ", a=" + a +
                ", name='" + name + '\'' +
                '}';
    }
}

private class Student<T extends Comparable<T>> {


}
思考:泛型是一种数据类型结构么,不是,说什么集合List的时候,他就是用到泛型搞起不确定参数的,那他是什么鬼?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值