思路分析示意图:
这个写法和上面的修改功能都有点bug,删除不存在的id时,会报错,还没有解决
//删除节点//思路://1.head不能动,因此我们需要一个temp辅助节点找到待删除节点的前一个节点//2.我们在比较时,时temp.next.no 和 需要删除的节点的no比较public void delete(int no) {HeroNode2 temp = head;boolean flag = false;//标志是否找到待删除的节点while (true) {if (temp == null) {break;}if (temp.next.no == no) {//找到了待删除节点的前一个节点flag = true;break;}temp = temp.next;}if (flag) {temp.next = temp.next.next;} else {System.out.printf("没有找到你要删除的%d号英雄\n", no);}}
