package com.xazynl; /** * projectName: NQZ * * @author: 谢新建 * time: 2021/4/4 16:07 * description: * 基于单向链表存取的容器 */ public class MySinglyLinkedList <E > implements MyList<E>{ //定义单向链表中的节点类对象 class Node<E>{ private E item; //储存元素 private Node next; //存储下一个节点对象的地址 Node(E item,Node next){ this.item=item; this.next=next; } } private Node head;//存放链表中的头节点。 private int size;//记录元素个数。 //向链表中添加元素 @Override public void add(E element) { //创建节点 Node<E> node = new Node<>(element,null); //找到尾节点 Node tail=getTail(); //节点的挂接 if (tail==null) this.head=node; else tail.next=node; //记录元素个数 this.size++; } //找到尾节点 private Node getTail(){ //头节点是否存在 if (this.head==null){ return null; } //查找尾节点 Node node=this.head; while (true){ if (node.next==null)break; node=node.next;//移动指针,指向下一个节点 } return node; } //根据元素的位置获取元素 @Override public E get(int index) { //校验index的合法性 this.checkIndex(index); //根据位置获取指定节点 Node<E> node = this.getNode(index); //将该节点中的元素返回 return node.item; } //对index进行校验 private void checkIndex(int index){ if (!(index>=0 && index < this.size)){ throw new IndexOutOfBoundsException("Index"+index+""+this.size); } } //根据位置获取节点 private Node getNode(int index){ Node<E> node = this.head; for (int i=0;i<index;i++){ node=this.head; } return node; } //获取元素个数 @Override public int size() { return this.size; } //根据元素的位置删除元素 @Override public E remove(int index) { //校验index的合法性 this.checkIndex(index); //根据位置找到该节点对象 Node<E> node=this.getNode(index); //获取该节点中对象的元素 E item =node.item; //将该节点对象从单向链表中移除 //判断当前删除节点是否为头节点 if (this.head==node){ this.head=node.next; }else { Node<E> temp=this.head; for (int i=0;i < index - 1;i++){ temp=temp.next; } temp.next=node.next; } node.next=null; //记录元素个数 this.size--; //将元素返回 return item; } public static void main(String[] args) { MySinglyLinkedList<String> mySinglyLinkedList=new MySinglyLinkedList<>(); mySinglyLinkedList.add("a"); mySinglyLinkedList.add("b"); mySinglyLinkedList.add("c"); mySinglyLinkedList.add("d"); mySinglyLinkedList.add("e"); System.out.println(mySinglyLinkedList.size()); System.out.println("----------------"); System.out.println(mySinglyLinkedList.remove(0)); System.out.println("-------------------"); for (int i=0;i< mySinglyLinkedList.size();i++){ System.out.println(mySinglyLinkedList.get(i)); } } }
问题:取值的时候为什么会只取b,我也用老师的源码运行了也是一样的
老师,为什么我引图片图片没出来呢?
老师,请问为什么在数组创建过程中重写toString方法会报错呢?
我当时忘了数组的遍历方法,想着重写一下toString来输出的
老师,这里有两个问题:
这里id为什么只能用这个名字呢?而在注解方式就可以使用其他名字。
这里并没有老师视频里的导入选项,但还是可以成功。
老师您好,视频中14:50秒中,__hash__参数获取时使用的正则表达式那里为什么那样写就能获取到,不是很理解。
docker 跟docker-ce 撒区别,我安装docker-ce 报错no-package docker-ce avaliable,然后我直接安装的docker 这个没撒问题吧,老师
视频中是不是用了三个linux一个分别安装了主库,重库,和mycat??mycat里还需要安装数据库吗???
URL=http://3962343sj5.zicp.vip/pay/callback/。无回调信息
怎么用清华源
老师为啥这个省略号怎么显示不出来?
老师f不是被final限定了 吗为什么后面它还能被赋值
老师,怎么只有删除字段的,有没有删除value的命令
但是本视频中总共有3个服务器呀,为什么这里说半数是3?应该是2不是么?
package jichu.oo.sxt; public class Insert01 { public static void main(String[] args) { for(int i=1;i<6;i++){ //int count=0; for (int j=0;j<5;j++){ int count=1; System.out.print(i+"\t"); count++; if (count==5){ System.out.print("\n"); } count=1; } //count=1; } } }
1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5
Process finished with exit code 0
输出结果在一行,没有实现1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
这样换行
1. 源码.zip
老师,为什么我的adminData的数据接受有不到呢,但是我看adminData数据是存在的,同级的vipData数据都可以正常引入。
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637