zoukankan      html  css  js  c++  java
  • 自动装箱和拆箱

    1.自动装箱

      ArrayList<Integer> list = new ArrayLlist<Integer>();

      list.add(2);

    自动变换为

      list.addInteget.valueOf(2);

    这种变换称为自动装箱。

    2.自动拆箱

      int  n = list.get(i);

    以上语句被翻译为

      int n = list.get(i).intValue();

    也就是说自动拆箱。

    3.自增操作产生装箱拆箱

      Integer n = 3;

      n++;

    编译器将自动插入一个对象拆箱的指令,然后进行自增计算,最后把结果装箱。

    4.自动装箱的一些规范

      自动装箱规范要求boolean、byte、char <= 127,介于-128~127之间的short和int被包装到固定的对象中。例如

      Integer a = 100;

      Integer b = 100;

    则a == b所得到的结果是true

      Integer a = 1000;

      Integer b = 1000;

    则a == b 所得到的结果是false

    5.一些注意点

      装箱和拆箱是编译器认可的,而不是虚拟机,编译器在生成类的字节码时,插入必要的方法调用,虚拟机只是执行这些字节码。

        

    你还有很多未完成的梦,你有什么理由停下脚步
  • 相关阅读:
    iOS自动化编译
    PlistBuddy
    用PlistBuddy修改Plist文件
    ios app 开发中ipa重新签名步骤介绍
    iOS 开发 Framework
    线程同步--线程间通信
    Linux 下 Redis 安装详解
    服务器响应头隐藏X-power-by
    git 初始化
    删除文件夹里的 .svn,
  • 原文地址:https://www.cnblogs.com/quanziheng/p/12298341.html
Copyright © 2011-2022 走看看