《java入门第一季》之泛型引入
来源:互联网 发布:人工智能的成功案例 编辑:程序博客网 时间:2024/06/05 18:42
泛型的引入:
首先看一段代码体会自动报错。
// 看下面这个代码 自动报错 String[] strArray = new String[3]; strArray[0] = "hello"; strArray[1] = "world"; strArray[2] = 10;//因为指定了string类型,是不可以存储int类型数据的。会自动报错。
集合也模仿着数组的这种做法,在创建对象的时候明确元素的数据类型。这样就不会在有问题了。
而这种技术被称为:泛型。
泛型:是一种把类型明确的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。参数化类型,把类型当作参数一样的传递。
格式:
<数据类型>
此处的数据类型只能是引用类型。
好处:
A:把运行时期的问题提前到了编译期间 --回想上边数组报错
B:避免了强制类型转换
C:优化了程序设计,解决了黄色警告线
通过一段代码来认识泛型到底是什么。
public class GenericDemo {public static void main(String[] args) {// 创建ArrayList<String> array = new ArrayList<String>();// 告诉我们array这个集合里面只能包含string类型。// 添加元素array.add("hello");array.add("world");array.add("java");// array.add(new Integer(100));// array.add(10); // JDK5以后的自动装箱。但是由于泛型的引入,把错误提前告知了。// 遍历Iterator<String> it = array.iterator();while (it.hasNext()) {// ClassCastException// String s = (String) it.next();【如果不指定泛型,返回的是Object类型,前面的integer时看不出有问题的,只有黄色警告线。但是这里会报 // 错。 integer转不到string String s = it.next();// 已经是String不用再强制类型转换。System.out.println(s);}
<span style="font-family: Arial, Helvetica, sans-serif;"></span>
0 0
- 《java入门第一季》之泛型引入
- 《java入门第一季》之泛型类引入
- 《java入门第一季》集合框架引入与面试题
- 《java入门第一季》之二维数组
- 《java入门第一季》之二维数组
- 《java入门第一季》之参数引用
- 《java入门第一季》之面向对象
- 《java入门第一季》之eclipse快捷键
- 《java入门第一季》之Arrays类
- 《java入门第一季》之泛型方法和泛型接口
- 《java入门第一季》之根据小案例体会泛型
- Java入门第一季
- java入门第一季
- Java入门第一季
- 《java入门第一季》之java语法部分小案例
- Java入门之Java第一个程序
- 《java第一季之入门篇》的想法
- 《java入门第一季》之面向对象(匿名对象)
- 手机适配----资源适配篇(values)
- Process and Thread Functions--进程线程函数
- 通过二维码传输少量文本文件
- C语言的类型转化
- U盘安装win7+CentOS6.3双系统
- 《java入门第一季》之泛型引入
- 客户端JavaScript
- common.css中面向属性的类定义
- KOG注释[Ubuntu 15.10系统]
- 蓝桥杯 九宫重排
- 漂亮的html表格源码
- Spring MVC 教程,快速入门,深入分析
- Xamarin 从原生Android SDK创建Xamarin版本的C# SDK Bindings Library
- R语言画图功能使用手册