关于Java泛型你还有什么疑虑?看完这篇一键消除你的小烦恼!

本文深入浅出地讲解Java泛型的基本概念与应用场景,包括泛型的定义与使用、泛型类与方法的实例化、以及如何利用泛型通配符提高代码灵活性。通过本文,你将了解到使用泛型的好处及局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

关于Java泛型你还有什么疑虑?看完这篇一键消除你的小烦恼!

Java泛型

**泛型:**是一种未知的数据类型,当我们不知道使用什么类型的数据的时候,可以使用泛型

泛型也可以看成是一个变量,用来接受数据类型

ArrayList在定义的时候,不知道集合中都会存储什么类型的数据,所以使用泛型

E: 未知的数据类型

创建集合对象的时候,就会确定泛型的数据类型

使用泛型的优缺点

创建集合对象,不使用泛型

好处:集合不使用泛型,默认的类型就是Object类型,可以存储任意类型的数据

弊端:不安全,会引发异常

创建集合对象,使用泛型

好处:

  1. 避免了类型转换的麻烦,存储的使什么类型,取出的就是什么类型
  2. 把运行期异常,提升到了编译期

弊端:

​ 泛型使什么类型,只能存储什么类型的数据

泛型的定义与使用

含有泛型的类

创建对象的时候确定泛型的数据类型

public class GenericClass<E> {
    private E name;

    public E getName() {
        return name;
    }

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

public static void main(String[] args) {
        GenericClass<Integer> gc = new GenericClass<>();
        gc.setName(2334);
    }
}

含有泛型的方法

在调用方法的时候确定泛型的数据类型

public <M> void nethod(M m){
    //方法体
}

泛型通配符

当使用泛型类或者接口时,传递的数据中,泛型类型不确定,可以通过通配符<?>表示。但是一旦使用泛型的通配符后,只能使用Object类中的共性方法,集合中元素自身的方法无法使用。

public static void printArray(ArrayList<?> list){
    //使用迭代器遍历集合
    Iterator<?> it = list.iterator();
    while(it.hasNext()){
        Object o = it.next;
        System.out.println(o);
    }
}

分类: [Java学习笔记]

标签: [java]
最后,祝大家早日学有所成,拿到满意offer,快速升职加薪,走上人生巅峰。可以的话请给我一个三连支持一下我哟???【获取资料】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值