• 中文
    • English
  • 注册
  • 查看作者
  • 《算法第四版》课后练习题1.2.8答案

    习题

    设 a[] 和 b[] 均为长数百万的整型数组。以下代码的作用是什么?有效吗?

    int[] t = a; a = b; b = t;

    要点分析

    数组变量是存放在栈内存中的,数组对象是存放在堆内存中的。数组变量只是一个引用变量,他能够指向实际的数组对象。

    所谓的数组初始化并非对数组变量初始化,而是对数组对象进行初始化。[1]

    参考答案

    这段代码将数组a和数组b交换。它的效率不可能再高了,因为它复制的是引用而不需要复制数百万个元素。

    参考资料

    [1] 脚本之家:java数组基础详解

  • 0
  • 0
  • 0
  • 1.5k
  • 袁韦韦

    请登录之后再进行评论

    登录
    单栏布局 侧栏位置: