Collection 和 Collections以及Comparable 和 Comparator
一. Collection 和 Collections
java.util.Collection 是集合类的上级接口,它提供了对集合对象进行基本操作的通用接口方法,如:add、remove等。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。
java.util.Collections 是一个帮助类。此类不能实例化,就像一个工具类,服务于Java的Collection框架。它包含有各种有关集合操作的静态方法,例如:实现对集合的排序、混排(shuffle)、反转(reverse)、返回集合中最小元素(min)、返回集合中最大元素(max)等方法。
二.Comparable 和 Comparator
- comparable接口实际上是出自java.lang包 它有一个
compareTo(Object obj)
方法用来排序 - comparator接口实际上是出自 java.util 包它有一个
compare(Object obj1, Object obj2)
方法用来排序
一般我们需要对一个集合使用自定义排序时,我们就要重写compareTo()
方法或compare()
方法,当我们需要对某一个集合实现两种排序方式,比如一个song对象中的歌名和歌手名分别采用一种排序方法的话,我们可以重写compareTo()
方法和使用自制的Comparator方法或者以两个Comparator来实现歌名排序和歌星名排序,使用第二种继承Comparator接口的方法意味着我们要实现两个参数版的比较方法。
Comparable 是排序接口,意味着“该类支持排序”。Comparable接口只包括一个方法,它的定义如下:
package java.lang;
import java.util.*;
public interface Comparable<T&