在23行开始的 del方法,实现index[ i ] 和index[ i +1 ]的元素互换,然后把删除掉index[ i ]这个元素(没有互换位置之前的),这是我在韩顺平的视频,我想不通的是这一点 在38行 houses[houseNums -1] = null;//把当前有存在的房屋信息的最后一个设置为null;
我画了一张图
画圈圈的位置就是我疑惑地方,如果交换的位置不是最后一位,也要把最后一位设置null吗?
35-37,执行一次index[ i ] =index[ i +1 ]后不会立刻跳出循环,而是继续运行循环运算。也就是说会一直重复将i+1往前挪一位,知道最后一个元素,最后一个元素也就没用了。还有,这个删除不是元素互换之后删除,而是index[ i +1 ]覆盖index[ i ]。