进阶day02-使用泛型(generic)的概念和好处
This commit is contained in:
48
javaSE-day02/src/com/inmind/generic04/GenericDemo04.java
Normal file
48
javaSE-day02/src/com/inmind/generic04/GenericDemo04.java
Normal file
@@ -0,0 +1,48 @@
|
||||
package com.inmind.generic04;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/*
|
||||
8.使用泛型(generic)的概念和好处
|
||||
|
||||
泛型:就是定义了一个未知的类型,当我们使用它时,才确定该类型,直接使用大写的任意字母来表示
|
||||
格式为<大写的字母>.
|
||||
|
||||
比如: ArrayList<E> ,此处 E 就是一个泛型
|
||||
|
||||
那么泛型的类型何时确定???
|
||||
比如: ArrayList<E>,在创建对象时才确定类型
|
||||
|
||||
注意:如果泛型不设定,默认就是Object
|
||||
|
||||
泛型的好处:
|
||||
1.使用泛型,可以省略强转操作
|
||||
2.将运行时期的异常提前到了编译时期,为了确保数据操作的安全性
|
||||
*/
|
||||
public class GenericDemo04 {
|
||||
public static void main(String[] args) {
|
||||
//不使用泛型的集合创建
|
||||
ArrayList lists = new ArrayList();
|
||||
lists.add("刘备");
|
||||
lists.add("关羽");
|
||||
lists.add("张飞");
|
||||
//lists.add(1);//1是什么数据类型?引用数据类型,1是自动装箱,new Integer(1)
|
||||
|
||||
for (Object o : lists) {
|
||||
String s = (String) o;//出现了运行时异常,类型转换异常
|
||||
System.out.println(s);
|
||||
System.out.println(s.length());
|
||||
}
|
||||
System.out.println("-----------------------------------------");
|
||||
//使用泛型的集合创建
|
||||
ArrayList<String> lists1 = new ArrayList<>();
|
||||
lists1.add("刘备");
|
||||
lists1.add("关羽");
|
||||
lists1.add("张飞");
|
||||
|
||||
for (String s : lists1) {
|
||||
System.out.println(s);
|
||||
System.out.println(s.length());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user