Java 决策表或if-else语句
我需要知道是我做决策表更好,还是做else声明更好。如果决策表更适合以下规则,请告诉我制定决策表所需的基本代码。我尝试使用if-else语句,但是输出不是我想要的。这个问题适用于百家乐游戏,规则如下:Java 决策表或if-else语句,java,if-statement,Java,If Statement,我需要知道是我做决策表更好,还是做else声明更好。如果决策表更适合以下规则,请告诉我制定决策表所需的基本代码。我尝试使用if-else语句,但是输出不是我想要的。这个问题适用于百家乐游戏,规则如下: 首先,如果任一玩家的牌数为8或9,称为“自然牌”,游戏结束,没有第三张牌 你曾经画过吗 第二,如果没有自然状态,玩家会收到第三张牌(“平局”或“命中”),或者没有 (“立拍”),根据以下规则: -玩家必须抽一张手牌值为5或更少的牌,并以6或更多的手牌持平。 -第三,如果没有自然条件,经销商将根据
- 首先,如果任一玩家的牌数为8或9,称为“自然牌”,游戏结束,没有第三张牌 你曾经画过吗
- 第二,如果没有自然状态,玩家会收到第三张牌(“平局”或“命中”),或者没有 (“立拍”),根据以下规则: -玩家必须抽一张手牌值为5或更少的牌,并以6或更多的手牌持平。 -第三,如果没有自然条件,经销商将根据以下规则抽签或站立 -如果玩家没有抽牌,那么庄家遵循与玩家相同的规则:庄家 必须用5张或更少的手抽一张牌,用6张或更多的手持平
- -如果玩家确实抽到了第三张牌,则决定仅基于该牌的价值(称之为C3)和该牌的价值 经销商的手。庄家必须抽一张手牌价值低于手牌价值的牌 小于或等于某个极限L,其中L的计算如下:
- 如果C3等于或大于8,则设Y=C3-10,否则设Y=C3。那么Y是从哪里来的 -2至7
- o要得到L,将Y除以2,截断结果,然后加3。我会的
从2点到6点。o经销商必须使用L或
少一点
可能会有帮助。请注意,开关或决策表或if-else的选择也取决于测试子句的结构方式。开关仅适用于整数值。如果无法将测试条件与如何随机访问联系起来,则可能没有其他选择,只能使用if-else。可维护的解决方案。在实际演示性能问题之前,不要担心优化问题。选择可读性和可维护性最好的解决方案。在实际演示性能问题之前,不要担心优化问题。从您的评论中,您提到使用决策表更好,因为有很多规则 这在一定程度上是正确的,但实际上并非如此 从您描述的内容来看,有很多不同用途的规则。无论您是在编写决策表还是手工,您仍然需要根据规则的用法和上下文对规则进行适当的组织,并分离“业务流”以使用这些规则 若并没有做到这一点,那个么使用决策表就更难编码,也更难阅读
当您考虑使用决策表(这意味着您将使用规则引擎)时,可读性可能不是最重要的因素。使用规则引擎的主要原因是为了促进将来规则的更改。如果您没有预见到这种需要,我强烈建议“手工制作”逻辑和正确的代码结构。从您的评论中,您提到使用决策表更好,因为有很多规则 这在一定程度上是正确的,但实际上并非如此 从您描述的内容来看,有很多不同用途的规则。无论您是在编写决策表还是手工,您仍然需要根据规则的用法和上下文对规则进行适当的组织,并分离“业务流”以使用这些规则 若并没有做到这一点,那个么使用决策表就更难编码,也更难阅读 当您考虑使用决策表(这意味着您将使用规则引擎)时,可读性可能不是最重要的因素。使用规则引擎的主要原因是为了促进将来规则的更改。如果您没有预见到这种需要,我强烈建议“手工制作”逻辑,以及结构正确的代码。选择