首页 >> 电子商务大学 >> 网站建设班 >> NET区
 
JAVA5 学习(1)



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)};
 }
}



1
 
电子商务大学版权与免责声明:

 
凡本网注明“来源:35DX”的所有作品,版权均属于电子商务大学,未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:电子商务大学”。违反上述声明者,本网将追究其相关法律责任。
凡本网注明“来源:XXX(非电子商务大学)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,同时,本站转载并无任何商业目的。
如因作品内容、版权和其它问题需要同本网联系的,请在30日内进行。
联系方式:电子商务大学 webMaster@35dx.com