先找需要修改的节点,通过遍历。
temp.name = heroNode.name;temp.nickName = heroNode.nickName;
代码实现 //修改节点的信息,根据编号来修改,编号不能修改 public void edit(HeroNode heroNode) { //判断是否为空 if(head.next == null) { System.out.println("链表为空~~"); return; } HeroNode temp = head.next; boolean flag = false; while(true) { if(temp == null) { //到链表的最后 break; } //找到需要修改的节点 if(temp.no == heroNode.no) { flag = true; break; } temp = temp.next; } if(flag) { temp.name = heroNode.name; temp.nickName = heroNode.nickName; }else{ System.out.printf("没有找到编号%d的节点,不能修改\n",heroNode.no); } } 运行截图先找到需要删除的这个节点的前一个节点temp。
temp.next=temp.next.next。
被删除的节点,将不会有其他引用指向,会被垃圾回收机制回收。