qq_40672700 2018-12-16 15:10 采纳率: 100%
浏览 2249
已采纳

为啥List的set方法替换出错,求详细解释

  • 图片说明
  • 图片说明
  • 替换错误结果:
  • 11 10
  • 10 10
  • 10 10
  • 30 10
  • 40 10
  • 预想替换结果:
  • 11 10
  • 10 10
  • 20 10
  • 30 10
  • 40 10
  • 写回答

2条回答 默认 最新

  • threenewbee 2018-12-16 15:24
    关注

    temp = a.get(i - 1); 这个是浅拷贝,简单来说
    a.set(i, temp);
    这两行执行完了,i和i-1两行指向同一个对象,而你循环里面对i-1的修改,其实作用在了i上。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?