当前位置: 首页 > news >正文

做网站水印WordPress语音朗读插件

做网站水印,WordPress语音朗读插件,wordpress代码中文注释,网站建设 方案下载目录 一、LinkedList的全面说明 二、LinkedList的底层操作机制 (一)LinkedList添加结点源码 (二)LinkedList删除结点源码 三、LinkedList常用方法 四、ArrayList与LinkedList的选择 一、LinkedList的全面说明 LinkedList底层实现了双向链表和双端队列的特点可以添加任意…目录 一、LinkedList的全面说明 二、LinkedList的底层操作机制 (一)LinkedList添加结点源码 (二)LinkedList删除结点源码  三、LinkedList常用方法 四、ArrayList与LinkedList的选择  一、LinkedList的全面说明 LinkedList底层实现了双向链表和双端队列的特点可以添加任意元素(元素可以重复)包括null线程不安全没有实现同步和互斥 二、LinkedList的底层操作机制 LinkedList底层维护了一个双向链表LinkedList中维护了两个属性first和last分别指向首节点和尾节点每个节点(Node对象)里面又维护了prev、next、item三个属性其中通过prev指向前一个通过next指向后一个节点。最终实现双向链表所以LinkedList元素的添加和删除不是通过数组完成的相对来说效率较高 (一)LinkedList添加结点源码 1. LinkedList linkedList new LinkedList();public LinkedList() {} 2. 这时 linkeList 的属性 first null last null 3. 执行 添加public boolean add(E e) {linkLast(e);return true;} 4.将新的结点加入到双向链表的最后void linkLast(E e) {final NodeE l last;final NodeE newNode new Node(l, e, null);last newNode;if (l null)first newNode;elsel.next newNode;size;modCount;} (二)LinkedList删除结点源码  linkedList.remove(); // 这里默认删除的是第一个结点1. 执行 removeFirstpublic E remove() {return removeFirst();} 2. 执行public E removeFirst() {final NodeE f first;if (f null)throw new NoSuchElementException();return unlinkFirst(f);} 3. 执行 unlinkFirst, 将 f 指向的双向链表的第一个结点拿掉private E unlinkFirst(NodeE f) {// assert f first f ! null;final E element f.item;final NodeE next f.next;f.item null;f.next null; // help GCfirst next;if (next null)last null;elsenext.prev null;size--;modCount;return element;} 三、LinkedList常用方法 因为LinkedList也继承了Collection和List所以List的方法也适用于LinkedList。 add()remove()    // 默认删除第一个结点removeFirst()removeLast()set(索引值,插入的元素)get(索引值) public static void main(String[] args) {LinkedList linkedList new LinkedList();linkedList.add(1);linkedList.add(2);linkedList.add(3);linkedList.add();linkedList.add( );linkedList.add( );linkedList.add(null);linkedList.add(null);System.out.println(linkedList linkedList);// linkedList[1, 2, 3, , , , null, null]// remove默认删除第一个结点linkedList.remove();System.out.println(linkedList linkedList);// linkedList[2, 3, , , , null, null]// 修改某个结点对象linkedList.set(1, 999);System.out.println(linkedList linkedList);// linkedList[2, 999, , , , null, null]// 得到某个结点对象// get(1) 是得到双向链表的第二个对象Object o linkedList.get(1);System.out.println(o); // 999// 因为LinkedList 是 实现了List接口, 遍历方式System.out.println(LinkeList遍历迭代器);Iterator iterator linkedList.iterator();while (iterator.hasNext()) {Object next iterator.next();System.out.println(next next);}// next2// next999// next// next// next// nextnull// nextnullSystem.out.println(LinkeList遍历增强for);for (Object o1 : linkedList) {System.out.println(o1 o1);}// next2// next999// next// next// next// nextnull// nextnullSystem.out.println(LinkeList遍历普通for);for (int i 0; i linkedList.size(); i) {System.out.println(linkedList.get(i));}// 2// 999//////// null// null } 四、ArrayList与LinkedList的选择  底层结构增删的效率改查的效率ArrayList可变数组较低底层依赖数组扩容较高根据数组索引查找LinkedList双向链表较高底层通过链表追加较低在链表中从头到尾遍历 如何选择ArrayList与LinkedList 如果改查的操作多选择ArrayList如果增删的操作多选择LinkedList一般来说80%-90%都是查询因此大部分情况下会选择ArrayList根据业务灵活选择也可能一个模块使用的是ArrayList另一个模块使用LinkedList。
http://www.w-s-a.com/news/995284/

相关文章:

  • 郑州网站优化顾问济宁网站制作
  • 网站开发简单吗网站引导页分为三个板块设计风格
  • 湖南做网站 在线磐石网络百度一下百度搜索
  • 现在建网站多少钱推广营销费
  • 联想企业网站建设的思路西安网站建设阳建
  • 网站内容 内链网站建设电话销售工作总结
  • 系统网站开发知名的摄影网站有哪些
  • 网站拍照的幕布扬中网站建设价位
  • 网站ie兼容性差西安小程序开发的公司
  • 上海网站建设培训app网站开发成本
  • 个人网站icp外贸网站开发 河南
  • 遵义建设网站无锡市规划建设局网站
  • 海外留学网站建设方案门户网站的发布特点
  • 网站建设不赚钱net112企业建站系统
  • 网站建设团队管理模板贵州省住房和城乡建设部网站
  • 曲沃网站建设网上学编程的有哪些比较好的网站
  • 厦门网站建设慕枫学做网站需要多久
  • 爱奇艺做任务领vip网站设计广告图片
  • 中科汇联网站建设手册上海公司名称注册查询网
  • 网站建设电子商务课总结和体会关于做网站书籍
  • 仪征网站建设公司哪家好简单网页制作素材图片
  • 甘肃第九建设集团公司网站潍坊个人做网站
  • 如何做后台网站的教程网站建设 关于我们
  • 极速网站建设哪家好连云港百度推广网站建设
  • 医院网站建设的目标wordpress中英文网站模板
  • 门户型网站开发难度网站导航栏有哪些
  • 推荐做任务网站软件定制开发哪家好
  • 邯郸兄弟建站第三方仓储配送公司
  • 商丘家具网站建设wordpress 添加代码
  • 基础建设的网站有哪些内容成都科技网站建设咨询电话