博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【145天】尚学堂高淇Java300集视频精华笔记(103-104)
阅读量:5971 次
发布时间:2019-06-19

本文共 2307 字,大约阅读时间需要 7 分钟。

2集知识点

  1. 手写Linklist的常用方法:

    1. add(Object obj)

    2. add(int index,Object obj)

    3. size()

    4. get(int index)

    5. rangCheck(int index)

    6. remove(int index)

    7. node(int index)

演示代码

package com.collection;public class Node {        Node previous;  //这里没加private是为了方便演示,应该加        Object obj;     //这里没加private是为了方便演示,应该加        Node next;   //这里没加private是为了方便演示,应该加                public void setPrevious(Node previous){            this.previous = previous;        }                public Object getPrevious(){            return previous;        }                public void setObj(Object obj){            this.obj = obj;        }                public Object getObj(){            return obj;        }                public void setNext(Node next){            this.next = next;        }                public Object getNext(){            return next;        }                        }
package com.collection;import java.util.List;public class SxtLinkedList /*implements List*/ {    private Node first;    private Node last;    private int size;    public void add(Object obj){        Node n = new Node();        if(first==null){            n.setPrevious(null);            n.setObj(obj);            n.setNext(null);                        first = n;            last = n;        } else {            //直接往last节点后增加新的节点            n.setPrevious(last);            n.setObj(obj);            n.setNext(null);                        last.setNext(n);            last = n;        }        size++;    }        public int size(){        return size;    }        public Object get(int index){        rangeCheck(index);        Node temp = node(index);        if(temp!=null){            return temp.obj;        }        return null;    }        public void rangeCheck(int index){        if(index<0||index>size){            try {                throw new Exception();            } catch (Exception e) {                e.printStackTrace();            }        }    }        public void remove(int index){        Node temp = node(index);        if(temp!=null){            Node up = temp.previous;            Node down = temp.next;            up.next = down;            down.previous = up;            size--;        }        }        public Node node(int index){        Node temp = null;        if(first!=null){            temp = first;            for(int i=0;i

转载地址:http://eczox.baihongyu.com/

你可能感兴趣的文章
HUST 1600 Lucky Numbers
查看>>
XTU 1243 2016
查看>>
CodeForces 157C Message
查看>>
Docker Day 4 Docker基础之Dockerfile语法
查看>>
生产环境下,oracle不同用户间的数据迁移。第一部分
查看>>
MySQL5.6transportable tablespace
查看>>
设计模式之-工厂方法模式
查看>>
MySQL学习笔记02-数据库概述及MySQL简介 .
查看>>
关于Kafka 的 consumer 消费者手动提交详解
查看>>
PSP总结报告
查看>>
C++ OOP学习记录
查看>>
s3c2440地址分配
查看>>
spark执行命令 监控执行命令
查看>>
洛谷P4382 劈配
查看>>
【我的Android进阶之旅】如何快速寻找Android第三方开源库在Jcenter上的最新版本...
查看>>
Springboot+JdbcTemplate +thymeleaf 页面 做迷你版的bug系统
查看>>
vi/vim 使用
查看>>
semantic ui框架学习笔记三
查看>>
Unix环境高级编程—进程关系
查看>>
XtraBackup出现 Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
查看>>