JDK1.5的新特性
来源:互联网 发布:ipad pro草图软件 编辑:程序博客网 时间:2024/04/19 06:04
1 自动打包和解包(boxing/unboxing)
提供基本数据类型和他们对应的外覆类的自动转换
举例来说:在jdk1.5以前,对于Map中元素的存储和取得都是通过Object来进行,不能直接通过基本数据类型
jdk1.5以前的写法:
Map map = new HashMap();
map.put("No1", new Integer(1));
int i = (Integer)map.get("No1").intValue();
jdk1.5的写法:
Map map = new HashMap();
map.put("No1", 1);
int i = (Integer)map.get("No1");
2 泛型----一般在定义容器的时候使用
在jdk1.5以前,容器中只能装Object类型的元素,所以不论什么类型的元素,如果放到容器中,都会失去他们自己的类型,取出来的时候,需要强制转换为他们自己的具体类型,很麻烦。
但是jdk1.5解决了这样的问题,通过泛型强制指定该容器只能放某种具体类型的元素,所以,在取出元素的时候,就不需要强制类型转换了。
例如:
jdk1.5以前的写法:取出容器中元素的时候,必须进行强制类型转换
List list = new ArrayList();
list.add("aaa1");
list.add("aaa2");
list.add("aaa3");
for (int i = 0; i < list.size(); i++) {
System.out.println((String) list.get(i));
}
jdk1.5的写法:取出容器中元素的时候,不必进行强制类型转换
List<String> list = new ArrayList<String>();
list.add("aaa1");
list.add("aaa2");
list.add("aaa3");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
注意:什么样的类可以指定<String>这样的东西呢?
类似于:public class ArrayList<E> extends AbstractList<E> implements List<E>
这种定义的类/接口就可以
当然,也可以指定多个,例如:
public interface Map<K,V>,就可以这样指定:
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("No1", 1);
int i = map.get("No1");
3 对于容器的For循环---简便型(遍历数组和容器)
int[] arr = {1,2,3,4,5,6};
for (int c : arr){
System.out.println(c);
}
或者
String[] arr = {"No1", "No2", "No3", "No4", "No5"};
for (String c : arr){
System.out.println(c)
}
或者
List list = new ArrayList();
list.add("No1");
list.add("No2");
list.add("No3");
for (Object c : list){
System.out.println((String)c);
}
- JDK1.5-JDK1.8的新特性
- jdk1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- jdk1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- jdk1.5的新特性
- jdk1.5的新特性
- jdk1.5的新特性
- JDK1.5的新特性
- JDK1.5的新特性
- JDK1.5,JDK1.6,JDK1.7 各自的新特性
- JDK1.5 新特性
- JDK1.5新特性
- IBM宣布重大举措 迎战全球海量信息变革
- 个人外包项目全记 - Best Partner (二)需求确定1
- Export selection of word document as an image file(2)
- 开店创业经典语句
- 清除Windows系统垃圾源码
- JDK1.5的新特性
- 创建理想的平衡二叉树
- iomanip.h 的格式化输出
- 个人外包项目全记 - Best Partner (三)需求确定2
- 网秦笔试
- 个人外包项目全记 - Best Partner (四)系统整体设计1
- 简单的i++、++i的问题
- 个人外包项目全记 - Best Partner (五)系统整体设计2
- 个人外包项目全记 - Best Partner (讨论1)程序风格