静态导入\自动装箱、拆箱\增强for循环

来源:互联网 发布:淘宝对纯棉全棉的定义 编辑:程序博客网 时间:2024/05/22 09:07

静态导入

Import static 包名.类名.静态属性|静态方法|*

静态导入语句使用import static 语句

导入指定类的单个静态属性:                              

     import static java.lang.System.out

导入指定类静态方法
 import static java.lang.Math.max

导入指定类全部静态属性和方法                                  

     importstatic java.lang.Math.*

自动装箱/拆箱

自动装箱(autoboxing):把一个基本数据类型直接赋给对应的包装类变量, 或者赋给 Object 变量

自动拆箱:把包装类对象直接赋给一个对应的基本类型变量

int m=9

System.out.println(“m”+m);

 

自动装箱

Integer n=m;

System.out.println(“n”+n);

自动拆箱

Int k=n;

System.out.println(“k”+k);

典型应用:

List list = new ArrayList();

list.add(1);

int j = (Integer)list.get(0);

 

增强for循环

引入增强for循环的原因:在JDK5以前的版本中,遍历数组或集合中的元素,需先获得数组的长度或集合的迭代器,比较麻烦!

因此JDK5中定义了一种新的语法——增强for循环,以简化此类操作。增强for循环只能用在数组、或实现Iterator接口的集合类上

使用 foreach 循环遍历数组和集合元素时, 无须获得数组和集合长度, 无须根据索引来访问数组元素和集合元素, foreach 循环自动遍历数组和集合的每个元素

语法格式:

for ( type 变量名:集合变量名 )  { … }

           for(type varName : array | collection){

                  //varName 自动迭代访问每一个元素

           }

 

 

@Test

    public void test(){

       List<String> list=new ArrayList<String>();

       list.add("aaa");

       list.add("bbb");

       list.add("ccc");

      

       for(String str:list){

           System.out.println(str);

          

       }

      

 

 

    }

@Test

    public void testMap(){

       Map map=newLinkedHashMap();

       map.put("1","aaa");

       map.put("2","bbb");

       map.put("3","ccc");

       for(Object obj:map.entrySet()){

           Map.Entry me=(Map.Entry)obj;

           System.out.println(me.getKey()+"="+me.getValue());

       }

      

    }

public void test5(){

       int[] arr=newint[5];

       for(int num:arr){

      

           System.out.println(num);

       }

       System.out.println(arr[0]);

    }

 

}