You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
虚线框表示接口(或者抽象类),实线框表示实现类,粗实线框表示开发中常用的类。
Java 的集合类主要由 Collection 接口和 Map 接口派生而来,其中 Collection 接口有两个常用的子接口( List 和 Set )。所以通常说 Java 集合框架由三大类接口构成( List 接口、 Set 接口、 Map接口)。
多态:
上面(2)处 ArrayList list = new ArrayList(); 也可以写成 List list = new ArrayList(); 并导入 java.util.List 工具包。
这是将接口 List 的引用指向实现类 ArrayList 的对象,在编程中将接口的引用指向实现类的对象是 Java 实现多态的一种形式,也是软件开发过程中实现低耦合的方式之一。
为什么使用集合框架?
Java 的集合类主要由 Collection 接口和 Map 接口派生而来,其中 Collection 接口有两个常用的子接口( List 和 Set )。所以通常说 Java 集合框架由三大类接口构成( List 接口、 Set 接口、 Map接口)。
其中 Arrays 和 Collections 中所有的方法都为静态的,以方便直接传入对象引用,执行相应的功能。http://blog.csdn.net/qq_29663071/article/details/51377334
Java 集合框架
List 接口存储一组不唯一,有序 (插入顺序)的对象:
Set 接口存储一组唯一,无序的对象
Map 接口存储一组键值对象,提供 key 到 value 的映射
ArrayList 实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高
LinkedList 采用链表存储方式。插入、删除元素时效率比较高
ArrayList 集合类
实例一:展现 ArrayList 常用方法
实例二(实体类+实现类):新闻管理系统:1.可以储存各类新闻标题(包含 ID、名称、创建者);2.可以获取新闻标题总数;3.可以逐条打印新闻标题
LinkedList 集合类
LinkedList 常用方法:
实例:增、删、获取头条/末条新闻标题
Set 接口
HashSet 集合类
HashSet 集合类的常用方法:
附:Java集合框架_hashCode() & equals()
Iterator 迭代器
Iterator 接口的两个主要方法:
另外,凡是由 Collection 接口派生而来的接口或者实现类,都实现了
iterate()
方法,iterator()
方法返回一个 Iterator 对象。Map 接口
Map 接口的常用方法
实例:建立国家英文简称和中文全名间的键值映射,并通过 key 对 value 进行操作
泛型
泛型的定义语法:
实例一:
实例二:
泛型集合
泛型在集合中的应用:
例如在 List 接口中的
add()
方法的参数是 Object 类型,在通过get()
方法取出集合中的元素时必须进行强制类型转换,还可能出现 ClassCastException 异常。另外, Map 接口中使用put()
和get()
方法存取对象时,使用 Iterator 接口的next()
方法取元素时存在同样的问题。使用泛型集合在创建集合对象时指定集合中元素的类型,从集合中取出时无需进行类型强制转换。如果把非指定类型对象放入集合,会出现编译错误。
泛型类、泛型接口、泛型方法
泛型类
定义泛型类的的语法:
泛型接口
定义泛型接口的的语法:
泛型方法
定义泛型方法的语法:
实例:
The text was updated successfully, but these errors were encountered: