您的位置:首页 > 编程语言 > Java开发

[基础回顾-JAVA类集框架篇]--JAVA集合框架简要总序

2009-02-24 18:45 316 查看
一、简介
数据结构对程序设计有着深远的影响,在面向过程的C语言中,数据库结构用struct结构体描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法。
  在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection Framework)。

  Java程序员在具体应用时,不必考虑数据结构和算法实现细节,只需要用这些类创建出来一些对象,然后直接应用就可以了。这样就大大提高了编程效率。

类似与C++中的标准模板库(Standard Template Library,STL)主要是对一些数据结构和相关算法的封装。C++中同样有这些东西。
 
二、集合框架层次结构

              Collection
                          ├List                               
                          │ ├LinkedList
                          │ ├ArrayList
                          │ └Vector
                          │ └Stack
                    │ 
                          └ Set
                               ├HashSet
                                                   └TreeSet
 

                 Map
                  ├Hashtable
                  ├HashMap
            ├TreeMap
                  └WeakHashMap
 
 
 
 
Utilies(集合框架中的工具类)

 

 
  
      Collections   
   
               Arrays       
 
*注意Collection与Collections之间的区别
区别:Collections是一个类,是为集合框架提供一些帮助和工具方法的类。
Collection是集合类的上级接口,继承于它的接口主要有Set和List。
Collections是针对集合类的一个工具类,帮助类,它提供了一系列静态方法实现了对各种集合的排序,查找和线程安全等操作。
总的说来,前者是接口,后者是工具类。
 
 
Comparable
Comparator
 

 

Comparable接口强行对实现它的每个类的对象进行整体排序。此排序被称为该类的自然排序,类的 compareTo 方法被称为它的自然比较方法。实现此接口的对象列表(和数组)可以通过Collections.sort(和 Arrays.sort)进行自动排序。实现此接口的对象可以用作有序映射表中的键或有序集合中的元素,无需指定比较器。

Comparator比较函数强行对某些对象 collection 进行整体排序。可以将 Comparator 传递给 sort 方法(如 Collections.sort),从而允许在排序顺序上实现精确控制。还可以使用 Comparator 来控制某些数据结构(如 TreeSet 或 TreeMap)的顺序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息