设计报告
方案一:
Sorter 包
UML 图如下:
主要思路:
此包主要运用了泛型的概念来对不同对象进行排序,因基本数据类型无法利用泛型,所以
将其进行了封装,包中使用排序适配器来实现不同方式的排序,可以通过实现 Comparator
接口来定义降序、升序、字典排序的适配器。用户可通过继承 Sort 类来拓展新的排序方法。
通过实现 Comparator 接口来实现新的排序顺序。
类成员:
Sort:实现了将简单数据类型的封装,并定义了 Sort 空方法,方法中使用了实现 Comparable
接口的泛型 T,方便子类的重写
InseronSort:重写了其父类的 Sort 方法,能够对所有实现了 Comparable 接口的类对象进
行插入排序
BubbleSort:重写了其父类的 Sort 方法,能够对所有实现了 Comparable 接口的类对象进行
冒泡排序
QuickSort:重写了其父类的 Sort 方法,能够对所有实现了 Comparable 接口的类对象进行快
速排序
Comparator:定义了一个将两对象进行比较的适配器,是一个提供 compare 方法的接口
AscCompator:实现 Comparator 接口,定义了将两对象进行比较的 Compare 方法,用来对
对象进行升序排列的适配器
DesCompator:实现 Comparator 接口,定义了将两对象进行比较的 Compare 方法,用来对
对象进行降序排列的适配器
主要代码说明:
1.对简单类型进行封装,排好序后返回排序结果,以 byte 数据类型为例