import java.util.ArrayList; import java.util.List; /* 泛型: 概述: 即泛指任意类型,又叫参数化类型,对具体类型的使用起到辅助作用,类似于方法的参数 集合类泛型的解释: 表示该集合存放指定类型的元素 好处: 类型安全 避免了类型转换 总结: 泛型一般只和集合类相结合使用 泛型是JDK5的特性,但是从JDK7开始,new后边的泛型可以不用写具体的数据类型(菱形泛型) */ public class Test { public static void main(String[] args) { //不适用泛型的集合 //1.创建集合对象 List list1 = new ArrayList(); //2.创建元素对象 //3.将元素对象添加到集合对象中 list1.add("a"); list1.add("b"); list1.add("c"); // list1.add(10); 报错:(.ClassCastException)类型转换异常,不会直接显示报错 //4.遍历集合 for (Object obj : list1) { String s = (String) obj; System.out.println(s); } System.out.println("-----------------------------------"); //需求:演示泛型 //1.创建集合对象 List<String> list2 = new ArrayList<>(); //2.创建元素对象 //3.将元素对象添加到集合对象中 list2.add("abc"); list2.add("abd"); list2.add("abe"); // list2.add(12); 只能添加String,否则会直接显示报错 //4.遍历集合 for (String s : list2) { System.out.println(s); } } }
定义了泛型就对当前对象中所有参数的数据类型进行了规范化(只能使用定义的数据类型)。
作者本人所有随笔仅为学习笔记,仅供参考
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)