JDK核心API:Java1.5语言新特性简单总结

来源:互联网 发布:centos 安装 编辑:程序博客网 时间:2024/04/20 07:48

 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 animals = new ArrayList();
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;
  }
  */
  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();

原创粉丝点击