黑马程序员----静态导入,for each循环,自动装箱拆箱学习日志

---------------------- android培训java培训、期待与您交流! -------------------------

 

静态导入:

import static 导入一个类中的静态方法而不必导入整个类

 

import static java.lang.Math.abs;//导入单个静态方法

System.out.println(Math.abs(3-7));//可以省略类名
System.out.println(Math.max(3,7));;//这个则不行

 

或者把所需要的这个类的静态方法全部引入,则可以省略类名

import static java.lang.Math.*;

System.out.println(Math.abs(3-7));
System.out.println(Math.max(3,7));

 

 

可变参数:

1)只能出现在参数列表的最后,用三个点表示

2)调用可变参数的方法时,编译器可为该可变量参数隐含创建一个数组,在方法体中以数组的形式访问可变参数

 

        class VariableParameter {

               public static void main(String[] args){

               System.out.println(add(1,3,5));

               System.out.println(add(2,4,7)); }

    }

   public static int add(int x,int ... args)  {

       int sum=x;//第一个参数不包含在数组内

       for(int i=0;i<args.length;i++)  {

              sum+=args[i]; }

   }

 

 

for each 循环:

在JDK5.0中新增强For循环。

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

集合变量可以是数组或实现了Iterable接口的集合类,()中定义了迭代的变量

public class GenericList

{

    public static void main(String[] args) 

    {

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

        strs.add("关于加强型for循环");

        strs.add("这是个小练习");

        strs.add("miximixi");

         for (String str:strs){

         System.out.println(str)

        }

    }

}

 

 

自动装箱与自动拆箱:

 

class  Autoboxing

{

   public static viod main(String[] args)

    {

   Integer box=3;//3自动装箱为Integer类型

            System.out.println(box+12);//box自动拆箱为int

              Integer a=100;

              Integer b=100;

            System.out.println(a==b); //true

              Integer x=128;

              Integer y=128;

            System.out.println(x==y); //false           

   }

}

在一个字节-128--127之内的数字,一旦包装成Integer对象是将它们缓存起来,节省空间。

因为数字小,多次使用的频率高,没必要每一个数字对应一个对象,这是一种设计模式,称为享元模式(flyweight)

即使用方法Integer.valueOf()转化也相同

Integer a=Integer.ValueOf(100);

Integer b=Integer.ValueOf(100);

System.out.println(a==b); //true

Integer x=Integer.ValueOf(128);

Integer y=Integer.ValueOf(128);

System.out.println(x==y); //false

 

 

---------------------- android培训java培训、期待与您交流! -------------------------

详情查询:黑马训练营

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值