posts - 19, comments - 1, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Java1.5语言新特性

Posted on 2006-10-09 23:05 xyang 阅读(263) 评论(0)  编辑  收藏

1. 自动装箱与拆箱 对应C#
 例1.1
  Integer i = 10;
  int j = i;
  
2. 更优化的for循环 对应就C#---foreach循环
 例2.1
  String[] names = {"BadBoy","GoodBoy","HappyGirl","sadGirl"};
  for(String option: names) {
   System.out.println(option);
  }
 例2.2 加泛型 对应C++模板
  import java.util.*;
  
  ArrayList<String> animals = new ArrayList<String>();
  animals.add("Dog");
  animals.add("Cat");
  animals.add("Chick");
  animals.add("Cow");
  for(String option : animals) {
   System.out.println(option);
  }
  
3.参数可变的方法和printf
 例3.1
  定义:
  public int sum(int... n) {  //传过来n为一个int型数组
   int tempSum;
   for(int option : n) {
    tempSum+=option;
   }
   /*
   for(int i = 0; i < n.length; i++) {
    tempSum+=n[i];
   }
   */
   return tempSum;
  }
  调用1: sum(1);
  调用2: sum(1,2);
  调用3: sum(1,2,3,4);
 例3.2 printf方法,  对应c语言的printf
  int x = 10;
  int y = 20;
  int sum = x + y;
  System.out.printf("%d + %d = %d",x,y,sum);
4. 枚举
 例4.1
  public enum MyColors {
   red,
   black,
   blue,
   green,
   yellow
  }
  
  MyColors color = MyColors.red;
  for(MyColors option : color.values()) {
   System.out.println(option);
  }

/**不能在switch语句里这样写case MyColors.red:
 *这样编译器不会让你通过*/
switch(color) {
 case red:
  System.out.println("best color is "+red);
  break;
 case black:
  System.out.println("NO " + black);
  break;
 default:
  System.out.println("What");
  break;
}

5.静态引用
 例5.1
  1.5版本以前的写法是:
 
    import java.lang.Math; //程序开头处
  
    ...
  
    double x = Math.random(); 
  1.5版本中可以这样写
   import static java.lang.Math.random; //程序开头处
   
   ...
    
   double x = random();  


只有注册用户登录后才能发表评论。


网站导航: