从诸葛亮的三个锦囊妙计谈策略模式
public int[] sort(int[] inArray,String type)
if(inArray[i]> inArray[j])
k = inArray[i];
inArray[i] = inArray[j];
inArray[j] = k;
for(int j=0;j< inArray.length-i-1;j++)
public void sort(int[] inArr);
public class SortOne implements SortAlgorithm
public void sort(int[] inArr)
if(inArr[i]> inArr[j])
k = inArr[i];
inArr[i] = inArr[j];
inArr[j] = k;
public class SortTwo implements SortAlgorithm
public void sort(int[] inArr)
if(inArr[j]> inArr[j+1])
public int[] sort(int[] inArray,String type)
sa = new SortOne();
else if(type.equals(“b”))
sa = new SrotTwo();
private int id;
private String name;
private double servedYears;
public void setId(int id)
public void setName(String name)
public void setServedYears(double servedYears)
public double getServedYears()
Arrays.sort(emps,new Comparator(){
Public int compare(Object o1,Object o2)
return ((Employee)o1).getServedYears()-((Employee)o2).getServedYears();
public class IdComparator implements Comparator
Public int compare(Object o1,Object o2)
return ((Employee)o1).getId()-((Employee)o2).getId();
public class NameComparator implements Comparator
Public int compare(Object o1,Object o2)
return ((Employee)o1).getName()-((Employee)o2).getName();
public class ServedYearsComparator implements Comparator
Public int compare(Object o1,Object o2)
return ((Employee)o1).getservedYears()-((Employee)o2).getServedYears();
public static Comparator getInstance(String type)
public void sort(Employee[] emps,String type)
从诸葛亮的三个锦囊妙计谈策略模式相关推荐
- Head First设计模式读书笔记——策略模式
问题描述: 目前的任务是实现一个FPS类游戏的各种角色(友军.敌军.平民和狗.猫.鸭子等动物)以及他们的各种行为(攻击.游泳等). 设计方案一 很简单,只要实现一个角色超类,将角色的各种行为放入超类中 ...
- springboot 文件上传 各种姿势 解锁,策略模式简单运用
总结:从文件上传谈 策略模式运用 ,虚拟路径配置,纸上得来终觉浅,绝知此事要躬行. 单文件,多文件,base64 几种上传方式 .具体细节参考我的代码库 https://gitee.com/www.l ...
- 一文搞懂策略模式(优化策略模式完全消除if else)
注重版权,转载请注明原作者和原文链接 作者:码农BookSea 原文链接:https://blog.csdn.net/bookssea/article/details/117043820?spm=10 ...
- Java设计模式——策略模式(解决满屏的if/else)
一.业务场景 项目需要对接支付系统,根据不同客户类型会有不同的支付方式,比如:支付宝.微信.银联.云闪付等等其他第三方支付平台,这个时候策略模式就大展身手了. 传统的if/else/switch 等等 ...
- 设计模式之Strategy策略模式
文章目录 前言 一.Strategy策略模式 二.策略模式原则 三.使用场景 1.先做比较练习 2.为一组对象排序 3.使用Lambda表达式的方式 前言 本人对于设计模式的学习,仅供参考! 一.St ...
- 设计模式 | 挑战策略模式
theme: vue-pro 这是我参与8月更文挑战的第4天,活动详情查看:8月更文挑战 一.概念 策略模式(Strategy Pattern)作为一种软件设计模式,指对象有某个行为,但是在不同的场景 ...
- 设计模式:策略模式(C++)【诸葛亮的锦囊妙计】
序言 今天带领大家一起来学习下策略模式,看到策略二字,就让笔者想到了谋略,想到了三国,那个谋士如云.英雄辈出的年代.遥想公瑾当年,小乔初嫁了,雄姿英发.咳咳,扯回来.我们所说的策略 ,从字面意思就是一 ...
- 锦囊妙计——策略模式
策略模式 Strategy Pattern:策略模式是GoF23中设计模式中属于行为型设计模式的一种. 策略模式的关键点就在于策略两字,策略是一种方法,一种方式,一种计策.用术语来讲的话,可以 ...
- else 策略模式去掉if_设计模式(三)——简单的状态模式代替if-else
博主将会针对Java面试题写一组文章,包括J2ee,SQL,主流Web框架,中间件等面试过程中面试官经常问的问题,欢迎大家关注.一起学习,一起成长. 前言 大多数开发人员现在还在使用if else的过 ...
最新文章
- ubuntu mysql 改密码_tpcc-mysql 压力测试
- httpClient多线程问题
- go使用反射reflect获取变量类型
- 参数校验放在controller还是service_@Validated校验的实践
- 腾腾流氓,云云更流氓(问微信怎样接入支付宝支付),手贱的赶紧点,你会感谢我的...
- 用python写helloworld_Python Helloworld程序简单实现
- 华为服务器麒麟系统,麒麟云服务器
- 关于JAVA小程序完整打包过程
- vue H5移动端项目 真机测试配置
- 移动H5 iPhone audio没有声音(声音不同步)问题的解决方式
- c语言拆礼盒,拆礼盒、个人中心功能优化
- Fortran之format输出
- python操作服务器(二)
- 会议通知html页面,【会议通知H5】送你最新会议邀请函H5教程,请点击查收!
- 识别电路板上贴片电阻型号0805 0402 0603 1206封装信息
- nodejs(五)node引入核心模块fs
- python输出无空格,python 2.7.5+打印列表后面没有空格的逗号
- 《Cisco IPv6网络实现技术(修订版)》一1.5 IPv5
- 浅谈供应链管理SCM的五大功能
- Java应用系统监控看这篇就够了
热门文章
- T400 Windows7下面迅盘的启用
- “碳中和”研究为什么需要气象数据
- java visibility_CSS visibility属性
- 谁是IPFS中国区“奶王”?IPFS.FUND周欢当仁不让
- 华为儿童手表可以升级鸿蒙吗,华为儿童手表 4X功能更新,儿童版微信上线
- SAP所有模块用户出口(转)
- python爬取斗鱼图片
- CCF-集合竞价(开盘价定为买价,1e8*5000--long long)
- 【paper】latex使用algorithm工具包实现伪代码排版
- Javascript ES6(一)