一.概述 Java的集合体系,本质上是一个陈放数据的容器,像之前学过的数组也是陈放数据的容器,但在 Java 中数组的长度是固定的,使用起来没那么方便.集合提供了更加强大的功能,使用起来也更方便和快捷.集合体系中提供的方法的底层源代码采用的也是优秀的高效率算法,其他数据容器能操作的,集合都能操作,而且代码更加简洁,思路更加清晰,运行的效率更加高.因此,完全掌握完集合.编程的技能会进一步提高. 二.集合体系 集合作为一个容器,可以存储多个元素,但是由于数据结构的不同,Java 提供了多种集合类,将…
1.定义:集合是一种容器,专门用来存储对象 数组和集合的区别?   A:长度区别  数组的长度固定 集合长度可变 B:内容不同  数组存储的是同一种类型的元素  而集合可以存储不同类型的元素  C:元素的数据类型问题  数组可以存储基本数据类型,也可以存储引用数据类型 集合只能存储引用类型 2.集合的继承体系结构 由于需求不同,Java就提供了不同的集合类.这多个集合类的数据结构不同,但是它们都是要提供存储和遍历功能的,   我们把它们的共性不断的向上提取,最终就形成了集合的继承体系结构图.  …
集合类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定,就使用集合容器进行存储 集合特点: 1.用于存储对象的容器 2.集合长度可变 3.不可以存储基本数据类型 集合体系的顶层Collection接口 Collection接口 |--List:有序(存入和取出的顺序一致),元素都是索引,元素可以重复 |--Vector:内部是数组数据结构,是同步的.增删,查询都很慢(已几乎不用) |--ArrayList:内部是数组数据结构,是不同步的.替代Vector.查询速度快 |--…
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 12.0px Times } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Songti SC" } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Times } p.p4 { margin: 0.0px 0.0px 0.0px 0.0…
数据结构 数据结构: 数据结构_栈:先进后出 入口和出口在同一侧 数据结构_队列:先进先出 入口和出口在集合的两侧 数据结构_数组: 查询快:数组的地址是连续的,我们通过数组的首地址可以找到数组,通过数组的索引可以快速的查找某一个元素. 增删慢:数组的长度是固定的,我们想要增加/删除一个元素,必须创建一个新数组,把原数组的数据复制过来 例: int[] arr = new int[]{1,2,3,4}; 要把数组索引是3的元素删除 必须创建一个新的数组,长度是原数组的长度-1 把原数组的其它元素…
一.定义 程序运行时总是会遇到各种各样的问题,Java中的异常体系就是针对这些问题提出的统一的处理方案.在Java中,将这些各种各样的问题进行归类后,统一称为异常. 二.分类 我们先来看看下面这个图: 错误(Error) 虚拟机错误(VirtualMachineError),如:资源耗尽.内存溢出: 异常(Exception) 运行时异常(RuntimeException) 受检异常(Checked Exception) 由上图可以看出来,Java的异常体系由 Throwable 类作为超类,两…
主要的方法 构造方法: TreeMap(); TreeMap(Comparator<?super K> comparator); TreeMap(Map<? extends K,? extends V> m); TreeMap(SortedMap m); 方法: Map.Entry firstEntry(); Object firstKey(); Map.Entry lastEntry(); Object lastKey(); Map.Entry higherEntry(Objec…
主要的方法 + 构造方法: * HashMap(); - 默认大小16,负载因子0.75 * HashMap(int initialCapacity); * HashMap(int initialCapacity,float loadFactor); * HashMap(Map<? extends K,? extends V> v); + 方法: * void clear(); - 清除所有键值对 * boolean containsKey(Object key); * boolean con…
一.接口Map<K,V>1.V put(K key, V value)2.int size()3.public class HashMap<K, V> implements Map<K, V>按键的哈希值存储,put时,key相同会发生替换,一个key值只能对应一个value4.Map的遍历Map没有迭代器,通过keyset()和values()遍历Set<K> keySet()Collection<V> values()//5.Set<M…
原文见: http://www.cnblogs.com/sunflower627/p/3158042.html 1. Comparator 和 Comparable 相同的地方 他们都是java的一个接口, 并且是用来对自定义的class比较大小的, 什么是自定义class: 如 public class Person{ String name; int age }. 当我们有这么一个personList,里面包含了person1, person2, persion3....., 我们用Coll…