从流程图生成java代码

从流程图生成java代码,java,workflow,code-generation,Java,Workflow,Code Generation,以下流程图: 可由以下java代码描述: if (A == 1 && B ==1){ actionA(); } if (B == 3 || (B == 1 && A == 2)){ actionB(); actionC(); } if (B == 2){ actionC(); } 有没有更好的方法用java代码翻译流程图?我正在寻找某种通用模式来实现这一点。我的问题来自这样一个事实,即向流程图中添加一个条件会导致代码发生非

以下流程图:

可由以下java代码描述:

if (A == 1 && B ==1){
   actionA();
 }

 if (B == 3 || (B == 1 && A == 2)){
    actionB();
    actionC();
}
 if (B == 2){
    actionC();
}

有没有更好的方法用java代码翻译流程图?我正在寻找某种通用模式来实现这一点。我的问题来自这样一个事实,即向流程图中添加一个条件会导致代码发生非常重大的更改

您可以封装ActionB和ActionC,而ActionC将在ActionBC中ActionB之后调用,并为流程图中的每个单元格创建一个新方法。一般来说,您应该得到如下信息:

void B1(){
如果(B==1)
A1();
如果(B==2)
动作c();
...
}

无效A1(){ 如果(A1==2) actionBC(); }

私有void actionBC(){…}


等等。。。这样,展开流程图不会使代码爆炸

这看起来像一个图结构,每个顶点都是一个条件或一个动作。
查找操作只需遵循条件值给出的路径。

流程图的输入格式是什么?我不明白。其中一个条件是
A==3 | |(A==1&&B==2)
。A什么时候可以变成3?对不起,现在更新。我只是想知道如何避免所有这些if语句(如果我添加条件(C,D…),它们的数量会增加很多),并且有一种将流程图转换为代码的通用方法。我相信在Java中有一些很好的FSMs实现示例。