关闭。这个问题是基于意见的。它目前不接受答案。
**想改进这个问题吗?**更新这个问题,这样就可以通过编辑这篇文章用事实和引文来回答。
23天前关门了。
改进这个问题
我需要创建一个简单的表,可能有13个输入列和1个输出列。此表中的数据不会更改。
类似于我们在这个图表/图片中看到的。我在努力寻找最好的方法。
使用.dmn表(决策表)
pros-决策表是一个静态表,可以帮助轻松实现此逻辑。
缺点-在我的osgi微服务中,我从未使用过jbpmn或camunda或任何类似的bpmn库。因此,仅仅为了创建决策表而导入、学习和使用库是一项开销。你同意吗?
在java本身中创建一个数据结构来保存这个静态表。然而,最大的问题是如何在java中创建这样的数据结构?
一种方法是使用一个Map,其中key作为所有输入列的串联,value作为输出列。但是,该键将变为超长至少13个字符(如果我决定使用yn或其他字符来表示表中的true、false、n/a值)。
还有别的办法吗?
2条答案
按热度按时间ttp71kqs1#
首先,我喜欢你的Map创意。它应该易于实现、理解和维护。
另一个想法是使用13维数组:
可能是14维,我还没想清楚?
e、 g.对于2个输入列:
对应map方法:
slhcrj9b2#
既然我们使用的是java,首先想到的就是创建一个类。
所以,让我们创建一个类来保存决策表的一行。
接下来,我们将创建一个类来保存决策树;
您可以根据需要向决策树中添加任意多的行。你方不适用由
null
.现在,你要做的就是匹配布尔值得到输出
String
.