Java-JDK5.0的简单新特性(静态导入,可变参数,增强型for循环,自动拆装箱)

新特性:1:提高安全性  2:提高效率  3:简化书写

1.静态导入

   import :导入某个类或,某个包下的所有类。

   import static : 导入某个类中的所有静态成员某个静态成员

    a.导入某个类的所有静态成员(方法和变量):  import static 包名.类名.*;

    b.导入某个类的某个静态成员: import static 包名.类名.静态成员名称;

2.可变参数(方法的参数)

   为了增强方法的重载,使得方法可以接收多个(不确定)参数,Java通过隐式的创建一个数组来存储

   可变参数,在方法内可以以数组形式访问它。

   注意:可变的参数只能在参数列表的后面。

    用法:add(3);  //只传入x=3,   add(3,4,5,6); //x=3,后面的赋给数组args.

public static void add(int x,int ...args)
{
       int sum=x;
       for(int e:args)
      {
          sum+=e;
      }
        System.out.println("add:"+sum);
}

3.自动拆装箱操作

   装箱:将基本数据类型包装为对应的包装类对象
   拆箱:将包装类对象转换成对应的基本数据类型

 //JDK5.0之前:  
        Integer obj1 = Integer.valueOf(1);  
          
        //JDK5.0之后: 
Integer obj2 = 2; //自动装箱:将基本数据类型转换成Integer对象
Integer it=4;
   int i=it+5;
   Integer it2=i+4;




System.out.println(obj2 + 3); //自动拆箱:将Integer对象转换成基本数据类型后相加 //-128~127的数字包装成Integer对象后,会缓存到一个对象池中,当要用到的时候会先到池中找 //提高效率:因为这些小整数会经常用到 Integer obj3 = 127; Integer obj4 = 127; System.out.println(obj3 == obj4); Integer obj5 = 128; Integer obj6 = 128; System.out.println(obj5 == obj6); Integer obj7 = Integer.valueOf(1); System.out.println(obj1 == obj7);

运行结果:5
              true

              false

              true

4.增强性for循环

    好处:适合用于遍历,提高了效率。

    坏处:无法得知变量的下标。
   注意: 只能是数组或集合类型

   用法: for( type 变量名:变量集合名) ,如上

 

posted @ 2014-12-31 10:47  beyondbycyx  阅读(164)  评论(0编辑  收藏  举报