容器和泛型的简单介绍
JDK1.5泛型
在定义集合的时候同时定义集合中对象的类型
增强程序的可读性和稳定性
能把问题提前暴露在编译之前,让编译器发现,这样可以降低程序出错率
//interface Map定义了存储key -- value 映射对,使用put方法添加数据 //JDK1.5之后支持自动打包和解包 public class HashMapDemo { public static void main(String[] args) { HashMap hashMap = new HashMap(); //自动将基础类型转换为对象,1实际上传递的还是Object hashMap.put("obj1", 1); //将得到的Object对象强制转换为Integer对象 int obj1 = (Integer) hashMap.get("obj1"); System.out.println(obj1); } }
如果利用泛型,则获取hashMap里面的值也不用强制类型转换了,简化的代码的难以程度
public class FanxingBianli { //泛型遍历 public static void main(String[] args) { List<String> arrayList = new ArrayList<String>(); arrayList.add("aaa"); arrayList.add("bbb"); arrayList.add("ccc"); //使用JDK1.5遍历 for(String temp : arrayList){ System.out.println(temp); } //interface Iterator用来遍历Collection System.out.println("use Iterator"); Iterator it = arrayList.iterator(); while(it.hasNext()){ String temp = (String)it.next(); System.out.println(temp); } System.out.println("use Iterator 泛型"); Iterator<String> iterator = arrayList.iterator(); while(iterator.hasNext()){ //不需要将获得的对象转换为String对象 String temp = iterator.next(); System.out.println(temp); } } }
回忆过去,珍惜现在,放眼未来