JAVA5 学习(1)
来源:互联网 发布:阳光网络伴我成长图片 编辑:程序博客网 时间:2024/06/10 03:20
JAVA5推出已经很长时间了,相比以前的版本,这次有了很多很好的新特性,在这里就和大家分享和探讨一下。
循环操作的增强
循环操作的增强对集合和数组提供了简单,一致的语法。
1.变量初始化
以前的代码实现:
int sum = 0; Integer[] numbers = computeNumbers(); for (int i=0; i < numbers.length ; i++) sum += numbers[i];
以上的初始化仅仅会在循环内部求值,就是说你常常可以除去这个声明的变量。在上面这个例
子里我们必须创建一个Integer数组来维持computeNumber()方法返回的Integer数组结果,为
的是在循环执行时不用重复计算computeNumber()方法返回值大小。
JAVA5代码实现:
int sum = 0; for ( int number: computeNumbers() ) sum += number;这就比以前的代码看起来更简洁,也不用声明一个中间变量numbers。局限:在要访问集合或数组内部值(numbers[i]),我们必须要使用JAVA5以前的写法:for (int i=0; i < numbers.length ; i++) { if (i != 0) System.out.print(","); System.out.print(numbers[i]);}上面的代码时将数组值用逗号(,)隔开,这种必须要用索引的程序只有用以前的写法了。for (Iterator<integer> it = n.iterator() ; it.hasNext() ; ) if (it.next() < 0) it.remove();上面的代码是要删除值为负数的项,我们必须一个个进行迭代,如果用循环增强显然为我们隐藏了这些,不能达到效果,必须用以前的写法达到效果!完整的例子:import java.util.*;public class GenericArrayExample {
public static void main(String args[])
{
//Vector<Integer> vectorList[] = new Vector<Integer>[10];
//Vector<Integer> vectorList[] = new Vector<Integer>[];
//Vector vector[] = new Vector[10];
int sum = 0;
for ( int number: computeNumbers() )
sum += number;
System.out.println(sum);
Integer[] numbers = computeNumbers();
for (int i=0; i < numbers.length ; i++) {
if (i != 0) System.out.print(",");
System.out.print(numbers[i]);
}
}private static Integer[] computeNumbers() {
// TODO Auto-generated method stub
return new Integer[]{new Integer(1),new Integer(2),new Integer(3)};
}
}
- JAVA5 学习(1)
- JAVA5 学习(2)
- JAVA5 学习(3)
- Java5.0学习笔记1
- 黑马程序员 – 学习Java5中的多线程(1) – 2012.10.29
- 黑马程序员 – 学习Java5线程并发库(3) -- 2013.1.1
- java5的学习总结
- Java5.0学习笔记
- java5 学习笔记2
- Java5 并发线程学习
- Java5 并发学习
- Java5 并发学习
- Java5 并发学习
- Java5 并发学习
- Java5 并发学习
- Java5 并发学习
- java5.30学习笔记
- Java5 并发学习
- 好久都没有来这个我们共同交流的地方了
- 1002 。
- When Element add attribute by the method "setAttribute",It can't work in IE
- ORACLE锁的管理
- 大家一起来破这个JSP.
- JAVA5 学习(1)
- 平静
- JAVA5 学习(2)
- JAVA5 学习(3)
- Photoshop入门与进阶实例:3.3 乳胶漆纹理效果
- Photoshop入门与进阶实例:3.4 碎石岩纹理
- 相遇-100
- 对目前主流开发技术的分析和总结 (转贴大富翁) ---- 献给困惑中的弟兄们
- 摆脱DLL"地狱"的困扰之获取进程信息