当前位置: 首页 > news >正文

java通配符?, T, E, K, V, N(简单易懂)

文章目录

  • 先点击收藏和点赞,切勿白嫖,感谢
  • 常见的通配符 ?, T, E, K, V, N
    • ?和Object的区别
  • 上界通配符<? extend E>
  • 无界通配符List<?> Class<?>
  • 下界通配符<? super E>

先点击收藏和点赞,切勿白嫖,感谢

常见的通配符 ?, T, E, K, V, N

有时候我们看底层实现代码的时候会遇见很多通配符,例如?, T, E, K, V, N,其实这些并没有任何区别,我们自己也可以设置
A-Z的任意一个,只不过大家都心照不宣的在命名上有些约定

通配符定义
T(Type)具体的java类
E(Element)集合中使用,因为集合中存放的是元素
K(Key)
V(Value)
N(Number)数值类型

?和Object的区别

?类型不确定和Object作用差不多,好多场景下可以通用,但?可以缩小泛型的范围,如:List<? extends E>,指定了范围只能是E的子类,但是用 List ,没法做到缩小范围。

上界通配符<? extend E>

可以传入的实参类型是E或者E的子类

无界通配符List<?> Class<?>

可以传入一个不确定的类型

下界通配符<? super E>

可以传入的实参的类型是E或者E的父类类型

http://www.dtcms.com/a/62120.html

相关文章:

  • 树莓派4B使用Ubuntu20.04连接不上热点
  • 从零开始学习PX4源码10(启动过程)
  • AI Agent系列(三) -Agent实现
  • 云原生服务网格:微服务通信的智能中
  • vue3-computed计算属性和reactive响应式系统结合使用
  • 01、Hive从入门到放弃,第一章:简单入门与安装
  • 引入其他 YML 配置源 —— Spring Boot 中的 `import` 功能
  • Leetcode-146.LRU缓存
  • Oracle RAC环境下自动清理归档日志实战指南
  • vscode更新后: 适用于 Linux 的 Windows 子系统必须更新到最新版本才能继续。可通过运行 “wsl.exe --update” 进行更新
  • 【从零开始学习计算机科学】操作系统(九)大容量存储器
  • Fast DDS Security--仿问控制
  • 《OpenCV》—— dlib(换脸操作)
  • Figma桌面客户端安装与协作设计入门指南(附官方下载链接)
  • 《React 属性与状态江湖:从验证到表单受控的实战探险》
  • Apache Hudi 性能测试报告
  • MVCC的理解(Multi-Version Concurrency Control,多版本并发控制)
  • 蓝桥杯备考:排队顺序(链表)
  • Spring Boot 整合 Redis
  • Python数据分析之数据可视化
  • 数据结构——堆
  • 使用异或完成两个整数的交换
  • 如何使用 CSS 实现黑色遮罩效果
  • VMware安装Windows server 2016
  • 使用const声明常量】
  • 如何为项目选择合适的EMI滤波器——共模与差模干扰分析
  • 【菜鸟飞】Conda安装部署与vscode的结合使用
  • 第27周JavaSpringboot电商进阶开发 1.企业级用户验证
  • C++手动实现一个线性探测法HashMap
  • 如何使用Opentelemetry+jaeger对Go与Java项目实现分布式链路追踪