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

宁波网站建设联系方法网站加上视频对seo影响

宁波网站建设联系方法,网站加上视频对seo影响,一些免费的网站,图片加文字前言 List、Set、HashMap作为Java中常用的集合#xff0c;需要深入认识其原理和特性。 本篇博客介绍常见的关于Java中List集合的面试问题#xff0c;结合源码分析题目背后的知识点。 关于的Set的博客文章如下#xff1a; Java进阶#xff08;Set#xff09;——面试时… 前言 List、Set、HashMap作为Java中常用的集合需要深入认识其原理和特性。 本篇博客介绍常见的关于Java中List集合的面试问题结合源码分析题目背后的知识点。 关于的Set的博客文章如下 Java进阶Set——面试时Set常见问题解读 结合源码分析 关于HaseMap的博客文章如下 Java进阶HashMap——面试时HashMap常见问题解读 结合源码分析Java进阶ConcurrentHashMap——面试时ConcurrentHashMap常见问题解读 结合源码分析 多线程CAS比较并交换 初识 其他相关的List的文章合集如下 手动实现ArrayList 源码的初步理解分析 数组插入数据和删除数据的问题 Java学数据结构1——抽象数据类型ADT 表List、栈Stack和队列Qeue 目录 前言引出ArrayList 如何扩容的/ArrayList的大小是如何自动增加的1.add添加第一个元素2.添加第11个元素时 如何复制某个ArrayList到另一个Arraylist中去厘清概念深浅拷贝复制的方法 在索引中ArrayList的增加或者删除某个对象的运行过程效率很低吗解释一下为什么效率确实低源码arraycopy方法 现在我有一个很大的数组需要拷贝原数组大小是 5k请问如何快速拷贝如何获得一个线程安全的ArrayList集合Collections.synchronizedList源码分析 LinkedList 和 ArrayList 该如何选择选择原则LinkedList源码node节点 Vector 集合总结 引出 1.ArrayList如何扩容1.5倍 2.ArrayList如何拷贝深拷贝浅拷贝 3.ArrayList的增加或者删除效率低arraycopy方法 4.指定长度创建ArrayList对象避免频繁扩容 5.线程安全的ArrayList集合Collections.synchronizedList 6.LinkedList 和 ArrayList 该如何选择ArrayList增删效率低查询效率高LinkedList 查询效率低增删效率高 7.Vector 集合和 ArrayList 区别Vector扩容机制为原始的2倍线程安全 ArrayList 如何扩容的/ArrayList的大小是如何自动增加的 ArrayList初始化的时候若没有给定长度则默认调用无参构造 此处elelmentData为ArrayList底层数组后面DEFAULTCAPACITY_EMPTY_ELEMENTDATA 为常量数组初值为空即长度为0 1.add添加第一个元素 当执行add方法添加第一个元素时执行下面的代码 此处涉及到两条代码 ensureCapacityInternal方法内会调用calculateCapacity方法此处才是赋予数组长度为10 ensureCapacityInternal 方法 calculateCapacity方法 private static int calculateCapacity(Object[] elementData, int minCapacity) {//如果数组是空的if (elementData DEFAULTCAPACITY_EMPTY_ELEMENTDATA) {//返回数组的容量DEFAULT_CAPACITY10return Math.max(DEFAULT_CAPACITY, minCapacity);}return minCapacity;}此时集合可以添加默认的10个元素 2.添加第11个元素时 当添加第11个元素时ensureExplicitCapacity方法中minCapacity为11而原数组长度为10所以if结构进入grow方法-扩容核心方法 ensureExplicitCapacity方法 grow方法-扩容核心方法 private void grow(int minCapacity) {// overflow-conscious code//把旧的长度赋值给oldCapacityint oldCapacity elementData.length;//新的长度就旧的长度*1.5int newCapacity oldCapacity (oldCapacity 1);if (newCapacity - minCapacity 0)newCapacity minCapacity;if (newCapacity - MAX_ARRAY_SIZE 0)newCapacity hugeCapacity(minCapacity);// minCapacity is usually close to size, so this is a win://按照新的长度复制出一个新的数组elementData Arrays.copyOf(elementData, newCapacity);}oldCapacity赋值为原数组长度为10 newCapacity赋值为原长度1.5倍即15 调用复制数组方法将之前的数组复制到新的数组中并将需要添加的元素加到数组最后一位完成扩容 如何复制某个ArrayList到另一个Arraylist中去 重写clone方法ArrayList克隆 厘清概念深浅拷贝 Java进阶4——结合类加载JVM的过程理解创建对象的几种方式new反射Class克隆clone拷贝序列化反序列化 浅拷贝虽然返回一个元素一样的ArrayList复制的是元素的引用即其中一个改变了元素另一个也会跟着改变 两个集合中间存储了同一份元素的引用 例如 深拷贝重写clone方法利用迭代器iterator或遍历集合重新创建引用对象逐个添加 例如 复制的方法 list.clone() clone.addALl(list); Collections.copy(clone,list); 在索引中ArrayList的增加或者删除某个对象的运行过程效率很低吗解释一下为什么 效率确实低 效率是很低的因为ArrayList无论是增加或者删除某个对象我们都要通过对数组中的元素进行移位来实现。 增加元素时我们要把要增加位置及以后的所有元素都往后移一位先腾出一个空间然后再进行添加。删除某个元素时我们也要把删除位置以后的元素全部元素往前挪一位通过覆盖的方式来删除。 而这种移位就需要不断的arraycopy是很耗时间的所以效率自然也很低。 源码arraycopy方法 增加元素时 删除元素时 现在我有一个很大的数组需要拷贝原数组大小是 5k请问如何快速拷贝 指定长度创建ArrayList对象避免频繁扩容 如何获得一个线程安全的ArrayList集合 Collections.synchronizedList ListObject datas Collections.synchronizedList(new ArrayList());源码分析 从源码可以看到集合操作都加了synchronized 关键字保证了在同一时刻数组和链表只会被一个线程所修改。 LinkedList 和 ArrayList 该如何选择 选择原则 ArrayList 底层为数组在增加和删除元素时会频繁的调用arraycopy所以查询效率高增删效率低LinkedList 底层为链表故查询效率低但增删效率高。 LinkedList源码node节点 item 为当前元素next指向下一个元素若为最后一个则为nullprev指向上一个元素若为第一个则为null Vector 集合 vector 和 ArrayList 基本一样区别在于 vector扩容机制为原始的2倍ArrayList为之前的1.5倍vector 是线程安全的ArrayList是非线程安全的 总结 1.ArrayList如何扩容1.5倍 2.ArrayList如何拷贝深拷贝浅拷贝 3.ArrayList的增加或者删除效率低arraycopy方法 4.指定长度创建ArrayList对象避免频繁扩容 5.线程安全的ArrayList集合Collections.synchronizedList 6.LinkedList 和 ArrayList 该如何选择ArrayList增删效率低查询效率高LinkedList 查询效率低增删效率高 7.Vector 集合和 ArrayList 区别Vector扩容机制为原始的2倍线程安全
http://www.w-s-a.com/news/347832/

相关文章:

  • 安装网站到服务器合肥建设干部学校网站
  • 影视网站如何做销售案例网站
  • 建设网站对比方案龙岗网站开发公司
  • 网站开发标准网站建设公司兴田德润可信赖
  • 如何建设一个公众号电影网站自动seo优化
  • 个人网站能备案吗酱香拿铁采取了哪些网络营销方式
  • 网站建设及推广好做吗自己做的网站加入购物车价格
  • 涡阳在北京做网站的名人注册一个免费的网站
  • 三门峡建设环境局网站公司注册网上核名通道
  • 叶县建设局网站要看网海外域名是多少
  • 网站运行环境配置Wordpress支付时效
  • logo设计网站知乎港北网站建设
  • 北京市保障性住房建设投资中心官方网站有限责任公司的特点
  • 做网站卖互联网营销怎么做
  • 晋州市建设局网站建站网站系统
  • 专业网站优化方案广东微信网站制作报价表
  • 北京网站建设公司分形科技简述营销网站建设策略
  • 汉中网站建设有限公司vue网站开发
  • 网站备案背景幕布阳江东莞网站建设
  • 北京网站建设要多少钱html网站标签
  • 做兼职做网站的是什么公司网站怎么修改
  • 舆情监控都有哪些内容西安seo网站公司
  • 网站有域名没备案天津网络营销
  • 哈巴狗模式网站开发电子商务平台建设与运营技术
  • 摄影网站源码wordpress内涵段子
  • 实验一 电子商务网站建设与维护图片做网站
  • 网站策划书模板大全中国建设部官方网站资格证查询
  • vps绑定多个网站创意咨询策划公司
  • 做qq图片的网站网页制作与网站建设江西
  • 做爰全过程的视频网站网络文化经营许可证怎么办