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

    1.自动装箱和自动拆箱

       - 指的是原始类型和封装类型相互转换。

     2. 为什么要拥有装箱和拆箱机制?

        - 使java代码更加彻底地面向对象

        - 从jdk1.5以后开始支持,使代码更加简洁,优雅,易懂。

      4. 装箱和拆箱解决了什么问题?

        - 因为java的集合只能存入对象,不支持原始类型,在jdk1.5时需要手工去转换原始类型和封装类型,jdk1.5以后引入装箱和拆箱就可以自动转换了,使代码的便于更加简洁、方便、易懂。

       5.装箱和拆箱的实现过程:

    /**
     * 装箱,拆箱
     * 
     * @author szy
     *
     */
    public class EncapsulationType {
        public static void main(String[] args) {
            Integer i = 10; // 装箱
            int n = i; // 拆箱
        }
    }
    

      

    使用javap -c 的命令反编译后我们发现:装箱时用了 Integer.valueOf(), 拆箱用了Integer.intValue()

    6.值传递
    - 原始类型值传递,是将值本身传递过去且原始类型保存在栈中。
    - 引用类型传递的时候是将引用传递过去,程序根据这个引用去堆中获取相应的值。引用类型的值保存在堆中,引用变量保存在栈中。
  • 相关阅读:
    求第N个素数
    HDU1568
    HDU1003 DP
    POJ 1016 模拟字符串
    POJ 3321 树状数组(+dfs+重新建树)
    UVA12532 线段树(单点更新,区间求乘积的正负)
    POJ2488 dfs
    POJ 1195 二维树状数组
    HDU 4006 优先队列
    优先队列
  • 原文地址:https://www.cnblogs.com/xinruyi/p/13592057.html
Copyright © 2011-2022 走看看