设计模式读书笔记-----策略模式(二)
int temp;
for (int i = 0; i < len; i++) {
temp = arr[i];
int j;
int samllestLocation = i;
for (j = i + 1; j < len; j++) {
if (arr[j] < temp) {
temp = arr[j];
samllestLocation = j;
}
}
arr[samllestLocation] = arr[i];
arr[i] = temp;
}
System.out.println(" ");
return arr;
}
}
最后就是测试类客户端了Client.java
public class ArrayHandler
{
private Sort sortObj;
public int[] sort(int arr[])
{
sortObj.sort(arr);
return arr;
}
public void setSortObj(Sort sortObj) {
this.sortObj = sortObj;
}
}
public class Client
{
public static void main(String args[])
{
int arr[]={1,4,6,2,5,3,7,10,9};
int result[];
ArrayHandler ah=new ArrayHandler();
Sort sort = new SelectionSort(); //使用选择排序
ah.setSortObj(sort); //设置具体策略
result=ah.sort(arr);
for(int i=0;i
{
System.out.print(result[i] + ",");
}
}
}
运行结果
排序
1,2,3,4,5,6,7,9,10,