设计模式之_Strategy_02
生活随笔
收集整理的這篇文章主要介紹了
设计模式之_Strategy_02
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com.learn.stratege;/*** 當你設計一個類的時候,如果你是站在使用的角度去考慮的話,* 對于這些類公開的接口,你考慮起來就會更加方便一些* * @author Leon.Sun**/
public class DataSorter {/*** 會創建static方法,因為我們是直接類名加方法去訪問的,* @param a*/public static void sort(int[] a) {/*** 你知道有多少種排序方法,最常見的大概有七種* 排序口訣:冒擇路(路就是插入)兮(兮就是希爾)塊歸堆* 口訣的意思是冒失的選擇一條道路進入的話,你就快進入到墳墓里面去了,* 因為的選擇太冒失了,選擇鬼門關了* 冒泡 選擇 插入 希爾 快速 歸并 堆排序* * 對于工作來說,數據結構和算法你只需要了解有這么一種算法,它的特點是什么* 基本上你沒有機會,你很少有機會寫一個特定算法的實現,數據結構和算法并沒有你想的那么重要* 我是說在工作之中,*/for(int i=0;i<a.length;i--) {for(int j=0;j<i-1;j++) {/*** 如果前面的那個數大于后面的那個數*/if(a[j]>a[j+1]) {/*** 兩者之間做交換*/swap(a,j,j+1);}}}}/*** 一個數組里的兩個東西來做交換* 為了方便我們把參數名改一下* @param a* @param j* @param i*/private static void swap(int[] a, int x, int y) {/*** 先把a[x]的值記在temp里*/int temp = a[x];a[x] = a[y];a[y] = temp;}public static void p(int[] a) {for(int i=0;i<a.length;i++) {/*** 是print不是println,不要換行*/System.out.print(a[i] + " ");}/*** 整個數組輸出之后再換行*/System.out.println();}}
package com.learn.stratege;public class Test {public static void main(String[] args) {/*** 我們該怎么調用了,假如我們定義一個數組*/int[] a = {9,5,3,7,1};/*** 假設有這么一個類,排順序者* 然后調用sort它就會幫我們調整順序*/DataSorter.sort(a);/*** 然后我們調用p就可以打印順序*/DataSorter.p(a);}
}
?
總結
以上是生活随笔為你收集整理的设计模式之_Strategy_02的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计模式之_Strategy_01
- 下一篇: 设计模式之_Strategy_03