將比較的方法封裝到單獨的乙個類中,做到實體類和方法類分離。方法類實現comparator介面。
在上一片部落格中,是用氣泡排序法進行排序,在實際的應用中,我們直接呼叫collections類中的sort方法即可,具體請看jdk幫助文件。
1package
hl7_11;23
import
j**a.util.arraylist;
4import
j**a.util.collections;
5import
j**a.util.comparator;
6import
j**a.util.list;
7import
j**a.util.set;
8import
j**a.util.treeset;910
public
class
setsort 21}
2223
class
student0
27public student0(int
id, string name)
3132
public
intgetid()
35public
void setid(int
id)
38public
string getname()
41public
void
setname(string name)
44@override
45public
string tostring()
4849}50
class com implements comparator
55 }
策略模式和排序演算法
常用的排序演算法有選擇排序,插入排序,氣泡排序,快速排序,歸併排序,希爾排序,堆排序這7種。假設現在有7個陣列,他們分別需要用到這7種排序方式的其中乙個進行排序應該怎麼辦呢。最常見的辦法就是寫乙個這樣的工具類 created by hao on 2016 6 19.public class sort...
策略模式之排序演算法
策略模式 strategy 它定義了演算法家族,分別封裝起來,讓它們之間可以相互替換,此模式讓演算法的變化,不會影響到使用演算法的客戶。排序介面 isort.h pragma once class isort virtual void dosort int a,int len 0 氣泡排序演算法類b...
模式 策略模式
前言 所有的設計模式都是基於程式設計屆前輩們的不斷實踐得出的解決一類問題中比較有效高效的程式設計方法。策略模式 策略模式用於解決業務中不同場景下統一行為的細微差別問題。策略模式遵循 開閉原則 舉個例子來說,在購物車功能中,結算 的時候會根據使用者的不同級別去打折,那麼打折計算 的這一行為就會有不同演...