`

根据输入执行代码块

    博客分类:
  • java
 
阅读更多

/**
 * f-road.com Inc.
 * Copyright (c) 2014 All Rights Reserved.
 */
package cn.com.froad.drools.points;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

/**
 * <pre>
 *  TODO:请添加注释描述
 * </pre>
 *
 * @author xueyunlong
 * @create 2015年5月11日 下午5:16:00
 * @modify
 * @since   JDK1.6
 */
public class PointRuleTest {
    public static void main(String[] args) throws IOException { 
        PointRuleEngine pointRuleEngine = new PointRuleEngineImpl(); 
        while(true){ 
            InputStream is = System.in; 
            BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
            String input = br.readLine(); 
             
            if(null != input && "s".equals(input)){ 
                System.out.println("初始化规则引擎..."); 
                pointRuleEngine.initEngine(); 
                System.out.println("初始化规则引擎结束."); 
            }else if("e".equals(input)){ 
                final PointDomain pointDomain = new PointDomain(); 
                pointDomain.setUserName("hello kity"); 
                pointDomain.setBackMondy(100d); 
                pointDomain.setBuyMoney(500d); 
                pointDomain.setBackNums(1); 
                pointDomain.setBuyNums(5); 
                pointDomain.setBillThisMonth(5); 
                pointDomain.setBirthDay(true); 
                pointDomain.setPoint(0l); 
                 
                pointRuleEngine.executeRuleEngine(pointDomain); 
                 
                System.out.println("执行完毕BillThisMonth:"+pointDomain.getBillThisMonth()); 
                System.out.println("执行完毕BuyMoney:"+pointDomain.getBuyMoney()); 
                System.out.println("执行完毕BuyNums:"+pointDomain.getBuyNums()); 
                 
                System.out.println("执行完毕规则引擎决定发送积分:"+pointDomain.getPoint()); 
            } else if("r".equals(input)){ 
                System.out.println("刷新规则文件..."); 
                pointRuleEngine.refreshEnginRule(); 
                System.out.println("刷新规则文件结束."); 
            } 
        } 
    } 
}

分享到:
评论

相关推荐

    本资源使用 C 语言中 switch 语句作为示例代码,它根据用户输入的数字打印相应的星期天

    在这个代码中,我们使用 switch 语句来根据输入的数字选择特定的 case 代码块来执行,每个 case 代码块负责打印相应的星期天。如果输入的数字不在 1 到 7 的范围内,default 代码块将执行,向用户提供错误信息。 ...

    makefile,快速编译代码块文件操作

    使用makefile快速编译...再make编译.o文件,然后输入:make bin/project 创建可执行文件,将bin中的project拖出目录,最后将当前文件中lib的.so文件复制到 根目录下 /lib中,就可以./project执行文件,运行代码了·~~

    汇编程序与代码块装载

    为了使用汇编语言,必须熟悉CPU和寄存器,还...其后,把MY-OS的代码放到第二个物理扇区,再编写装载此代码块的汇编程序放到引导扇区;接着介绍COM可执行文件的生成和使用,最后简介实模式调试工具debug的基本使用方法

    C语言中分支结构:if语句、if-else语句和switch语句的使用方法.docx

    C语言中分支结构是一种非常基本但非常重要的编程结构,它允许程序根据条件执行不同的代码块。在C语言中,分支结构有三种基本类型:if语句、if-else语句和switch语句。这些语句的使用可以使程序更加灵活和智能。 1....

    深度学习入门-Python语言学习-03条件语句-入门学习

    if 语句是最基本的条件语句,用于根据条件执行代码块。例如: ``` if True: print('Hello, World!') ``` 这段代码将输出 "Hello, World!",因为条件 True 是成立的。 3. if...else 语句的使用 if...else 语句是 ...

    (完整word版)五邑大学C语言-编程题代码.doc

    这个例子展示了控制结构的使用,可以根据不同的条件执行不同的代码块。 知识点3: 函数 在第三道题目中,我们使用了switch语句来实现多个分支的逻辑判断,并使用了printf函数来输出结果。这个例子展示了函数的使用...

    中间代码基本块划分.pdf

    3. 构造基本块:根据入口语句和出口语句,将中间代码序列分割成多个基本块,并删除不属于任何基本块的语句。 二、流程示意图 流程示意图是对基本块划分的可视化表示,使用四元式序列来描述基本块之间的跳转关系。...

    基于gevent开发的模拟twisted的轻型的异步网络框架.rar

    在这之前先了解下什么是事件驱动编程 传统的编程是如下线性模式的: 开始---&gt;代码块A---&gt;代码块B---&gt;代码块C---&gt;代码块D---&gt;......---&gt;结束 每一个代码块里是完成各种各样事情的代码,但编程者知道代码块A,B,C,D......

    python基础知识点汇聚

    * while 语句可以根据条件执行代码块,直到条件不成立。 * for 语句可以遍历列表、元组、字典等,执行代码块。 四、函数 * Python 的函数可以封装代码块,提供了代码的重用性。 * 函数可以有多个参数,可以返回值...

    Arduino编程参考手册中文版.doc

    * switch 语句:用于根据不同的条件执行不同的代码块。 * while 语句:用于重复执行指定的代码块,直到条件不再满足。 * do...while 语句:用于重复执行指定的代码块,直到条件不再满足。 * break 语句:用于跳出...

    matlab暑期课程代码.rar

    第一步:选中要执行的代码或者代码块 第二步:右键 选择执行所选内容 第三步:我们可以发现命令行窗口出现了以下的显示 同时在工作区出现了变量a的值,如下所示: 这就是最基本的选中执行的操作 1-2 输出、输入...

    python 每日练习 选择与循环

    if 语句用于判断条件是否成立,如果条件成立,则执行代码块。例如: ``` x = 5 if x &gt; 10: print("x 是正数") ``` 2. if-else 语句 if-else 语句用于判断条件是否成立,如果条件成立,则执行 if 代码块,否则执行 ...

    Arduino编程参考手册中文版.pdf

    * for 语句:用于循环执行代码块,直到条件不满足为止。 * switch 语句:用于根据不同的值执行不同的代码块。 * while 语句:用于循环执行代码块,直到条件不满足为止。 * do...while 语句:用于循环执行代码块,...

    Python if语句知识点用法总结

    计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据...如果 if 语句判断为 True,就会执行这个代码块。 缩进请严格按照Python的习惯写法:==4个空格==,不要使用Tab,更不要混合T

    USACO题目Transformations(方块转换)及代码解析

    最后,我们需要编写一个主函数来控制程序的执行流程。 在编写代码时,我们需要注意以下几点: * 使用const static int Maxn = 20;来定义图案的最大尺寸。 * 使用using namespace std;来使用标准库中的函数和变量。...

    使用`switch`语句的示例.pdf

    当用户选择的选项与某个`case`后面的常量值匹配时,程序会执行对应的代码块。在每个`case`代码块的末尾,我们使用`break`语句来跳出`switch`语句。如果用户的选择没有匹配到任何一个`case`,则会执行`default`代码块...

    python理论基础和常见问题解答

    条件语句和循环语句:条件语句用于根据条件的不同执行不同的代码块,可以通过elif和else语句组合使用以实现复杂的逻辑判断。循环语句用于重复执行一段代码直到满足某个条件为止,Python提供了两种循环方式,可以...

    WEB开发 之 JavaScript 错误 - Throw、Try 和 Catch.docx

    Catch语句允许我们定义当Try代码块发生错误时,所执行的代码块。Try和Catch语句是成对出现的。 Throw语句允许我们创建自定义错误。正确的技术术语是:创建或抛出异常(exception)。如果把Throw与Try和Catch一起...

    python-条件判断语句-05

    代码块中保留一组代码,同一个代码块中的代码,要么都执行,要么都不执行。 代码块以缩进开始,知道代码恢复到之前的缩进级别是结束。 代码块是一种为代码分组的机制。 2.input函数 该函数用来获取用户的输入 input...

Global site tag (gtag.js) - Google Analytics