一、Java集合
集合简易架构图:
1、集合是什么?
存储对象的容器,面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,存储对象,集合是存储对象最常用的一种方式。
集合中可以存储任意类型的对象,而且长度可变。在程序中有可能无法预先知道需要多少个对象,那么用数组来装对象的话,长度不好定义,而集合解决了这样的问题。
2、集合与数组的区别?
数组长度是固定的,一旦声明好,不可改变,集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。数组中存储数据类型是单一的,集合中可以存储任意类型的对象。想学习交流HashMap,nginx、dubbo、Spring MVC,分布式、高性能高可用、MySQL,redis、jvm、多线程、netty、kafka、的加尉xin(同英):cgmx9880 扩列获取java进阶资料学习,无工作经验不要加哦!
**3、**所有集合类都位于java.util包下,Collection和Map是Java集合框架的根接口。
**4、**Collection是高度抽象出来的集合根接口,它包含了集合的基本操作和属性。Collection包含了List和Set两大分支。
List集合是有序集合,集合中的元素可以重复,也维护元素的插入顺序,访问集合中的元素可以根据元素的索引来访问,每一个元素都有它的索引。第一个元素的索引值是0。
List的实现类有LinkedList、ArrayList、Vector、Stack等。
Set集合是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问。Set依赖于Map,它实际上是通过Map实现的;
Set的实现类有HashSet、LinkedHashSet、TreeSet等。
java.util.Collection
—| Collection 描述所有接口的共性
----| List接口 可以有重复元素的集合
----| Set 接口 不可以有重复元素的集合
**5、**Map接口是一个保存Key-value映射型的接口,跟Collection接口两个独立的接口,访问可根据每项元素的key来访问其value。Map中的每一个元素包含一个key和value。AbstractMap是个抽象类,它实现了Map接口中的大部分API。想学习交流HashMap,nginx、dubbo、Spring MVC,分布式、高性能高可用、MySQL,redis、jvm、多线程、netty、kafka、的加尉xin(同英):cgmx9880 扩列获取java进阶资料学习,无工作经验不要加哦!
Map接口实现类有HashMap、TreeMap、LinkedHashMap、Hashtable等。
二、准备工作
**1、**环境:JDK8、Eclipse
**2、**配置JDK环境
**3、**Eclipse配置JDK源码的Debug模式,目的是解决Eclipse调试JDK源码时,无法查看变量值