博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《设计模式之禅》--策略扩展:策略枚举
阅读量:4687 次
发布时间:2019-06-09

本文共 935 字,大约阅读时间需要 3 分钟。

接上篇

需求:加减法计算

public enum Calculator {    //加法运算    ADD("+") {        public int exec(int a, int b) {            return a + b;        }    },    //减法运算    SUB("-") {        public int exec(int a, int b) {            return a - b;        }    };    String value = "";    //定义成员值类型    private Calculator(String _value) {        this.value = _value;    }    //获得枚举成员的值    public String getValue() {        return this.value;    }    //声明一个抽象函数    public abstract int exec(int a, int b);}

调用

public class Client {    public static void main(String[] args) {        //输入的两个参数是数字        int a = Integer.parseInt(args[0]);        String symbol = args[1]; //符号        int b = Integer.parseInt(args[2]);        System.out.println("输入的参数为:" + Arrays.toString(args));        System.out.println("运行结果为:" + a + symbol + b + "=" + Calculator.ADD.exec(a, b));    }}

关键

Calculator.ADD.exec(a, b)

转载于:https://www.cnblogs.com/anni-qianqian/p/8442124.html

你可能感兴趣的文章
谷歌浏览器,添加默认搜索引擎的搜索地址
查看>>
数据结构化与保存
查看>>
如何避免在简单业务逻辑上面的细节上面出错
查看>>
Linux shell 命令判断执行语法 ; , && , ||
查看>>
vim代码格式化插件clang-format
查看>>
RTP Payload Format for Transport of MPEG-4 Elementary Streams over http
查看>>
Java环境变量设置
查看>>
【JBPM4】判断节点decision 方法3 handler
查看>>
filter 过滤器(监听)
查看>>
node启动时, listen EADDRINUSE 报错;
查看>>
杭电3466————DP之01背包(对状态转移方程的更新理解)
查看>>
kafka中的消费组
查看>>
python--注释
查看>>
SQL case when else
查看>>
MVc Identity登陆锁定
查看>>
cdn连接失败是什么意思_关于CDN的原理、术语和应用场景那些事
查看>>
ultraedit26 运行的是试用模式_免费试用U盘数据恢复工具 – 轻松找回U盘丢失的各种数据!...
查看>>
python sum函数导入list_python sum函数iterable参数为二维list,start参数为“[]”该如何理解...
查看>>
UVa540 Team Queue
查看>>
android 练习之路 (八)
查看>>