java主要集合类的数据结构学习】的更多相关文章

http://www.cnblogs.com/beanmoon/archive/2012/11/22/2782442.html 在程序中,集合类每天都在使用,以致于某些代码充斥着List和Map,一直没有机会整理下它们背后的实现原理.这几天不太忙,正好可以看会代码,补充下概念. 和集合类的大致分类类似,下面我也分List,Map和Set来描述. 一. List 1).ArrayList  ArrayList维护着一个对象数组.如果调用new ArrayList()后,它会默认初始一个size=…
1).ArrayList  ArrayList维护着一个对象数组.如果调用new ArrayList()后,它会默认初始一个size=10的数组.  每次add操作都要检查数组容量,如果不够,重新设置一个初始容量1.5倍大小的新数组,然后再把每个元素copy过去.  在数组中间插入或删除,都要移动后面的所有元素.(使用System.arraycopy()) 2).LindedList LinkedList的实现是一个双向链表.每个节点除含有元素外,还包含向前,向后的指针. 3).HashM…
Java集合类及其数据结构归纳 - s小小的我 - 博客园http://www.cnblogs.com/shidejia/p/6433788.html ---------大图可以 在新标签中打开图片 看到大图 上面这张图总结了java集合类的继承结构,下面是对集合类的一些总结和特性描述: Collection Collection是一个接口,是高度抽象出来的集合,它包含了集合的基本操作:添加.删除.清空.遍历.是否为空.获取大小.是否保护某元素等等.Collection接口的所有子类(直接子类和…
对于java的集合类,首先看张图 这张图大致描绘出了java集合类的总览,两个体系,一个Collection集合体系一个Map集合体系.在说集合类之前,先说说Iterable这个接口,这个接口在jdk1.8之前,里面只有一个方法Iterator<T> iterator(),即返回一个T类型的迭代器,在1.8增加了两个default修饰的方法 default void forEach(Consumer<? super T> action) { Objects.requireNonNu…
一.理论知识部分 第九章  集合 1.数据结构介绍:线性结构:线性表,栈,队列,串,数组,文件.非线性结构:树,图. 散列表:又称为哈希表. 散列表算法的基本思想是:以结点的关键字为自变量,通过一定的函数关系(散列函数)计算出对应的函数值,以这个值作为该结点存储在散列表中的地址.当散列表中的元素存放太满,就必须进行再散列,将产生一个新的散列表,所有元素存放到新的散列表中,原先的散列表将被删除. 2.java的集合框架: JAVA的集合框架实现对各种数据结构的封装,以降低对数据管理与处理的难度.所…
201771010126 王燕<面向对象程序设计(java)>第二周学习总结 一.理论知识学习部分 3.1j简单 的java应用程序 标识符由字母.下划线.美元符号和数字组成, 且第一个符号不能为数字.标识符可用作: 类名.变量名.方法名.数组名.文件名等.第二部分:理论知识学习部分 3.2关键字 Java语言中已经被赋予特定意义 的一些单词. l常见有:class.public.try.catch.if. float.import.void等. 关键字不做变量名. 3.3数据类型 整型:表示…
王之泰201771010131<面向对象程序设计(java)>第四周学习总结 第一部分:理论知识学习部分 第四章 1.类与对象的基础概念. a.类(class)是构造对象的模板或蓝图.由类构造对象的过程称为创建类的实例:   b.对象:即数据,对象有三个特性——1.行为 2.状态 3.标识. 2.类与对象的关系 a.类是对象,事物的描述和抽象,是具有相同属性和行为的对象集合.对象则是该类事物的实例. b.类是一个静态的概念,类本身不携带任何数据.当没有为类创建任何对象时,类本身不存在于内存空间…
王之泰201771010131<面向对象程序设计(java)>第二周学习总结 第一部分:理论知识学习部分 第三章 第三章内容主要为Java语言的基础语法,主要内容如下 1.基础知识 1.1标识符 a)标识符可用作类名.变量名.方法名.数组名.文件名等. 注:第一个符号不能为数字,即不能用数字开头. 1.2关键字 a)关键字是Java语言中已经被赋予特定意义的一些单词. b)常见有:class.public.try.catch.if. float.import.void等. 注:关键字不做变量名…
李清华201772020113<面向对象程序设计(java)>第二周学习总结 第一部分 理论知识 第三章 本章主要讲了java基本知识中的标识符,关键字,注释,以及数据类型,变量,运算符,类型转换,字符串,输入输出,控制流程,大数值,数组等内容. 标识符:由字母.下划线.美元符号.和数字组成,且第一个符号不能为数字.例如:Hello.$1234.程序名.WWW_123.标识符可用作类名.变量名.方法名.数组名.文件名等. 关键字:Java中已经被赋予特定意义的一些单词,例如:class.pub…
20172325 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 图的定义 图是由顶点集(VertexSet)和边集(EdgeSet)组成,针对图G,顶点集和边集分别记为V(G)和E(G).依据图的边集是否为有向,可把图分为有向图和无向图,根据图是否有权重,可以分为有权图和无权图. 图的基本术语: 1.邻接点----在一个无向图中,若存在一条边(Vi,Vj),则称Vi,Vj为此边的两个端点,并称它们互为邻接点: 2.出/入边 -----在一个有向图张,若存在一条边…