Java1.5语言新特性简单总结

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

你可能感兴趣的:(Java1.5语言新特性简单总结)