Java 如何使重要的一元负号在代码中脱颖而出?
我有一个实体,它代表一个数量的保留。还有一些实体的该属性为负值,表明该预订不可用。然后,逻辑将使用正数量属性值减少保留的数量。因此,我有以下声明:Java 如何使重要的一元负号在代码中脱颖而出?,java,operators,readability,Java,Operators,Readability,我有一个实体,它代表一个数量的保留。还有一些实体的该属性为负值,表明该预订不可用。然后,逻辑将使用正数量属性值减少保留的数量。因此,我有以下声明: long quantityToDecrease = -reservation.getQuantity(); 如何使一元负号脱颖而出,以便代码的读者能够注意到它?要使它真正脱颖而出,您可以创建一个单独的方法,或者在一个单独的类中: long quantityToDecrease=negate(reservation.getQuantity()) 这可
long quantityToDecrease = -reservation.getQuantity();
如何使一元负号脱颖而出,以便代码的读者能够注意到它?要使它真正脱颖而出,您可以创建一个单独的方法,或者在一个单独的类中:
long quantityToDecrease=negate(reservation.getQuantity())代码>
这可能看起来有点过分,但我认为这样你会得到读者最好的关注
另外,如果你在很多地方使用它,也许你可以编写你自己的NumberUtil
类或者类似的东西,在那里你可以定义你的否定方法。让它像:
long quantityToDecrease=NumberUtil.negate(reservation.getQuantity())代码>为了让它真正脱颖而出,您可以创建一个单独的方法,也可以创建一个单独的类:
long quantityToDecrease=negate(reservation.getQuantity())代码>
这可能看起来有点过分,但我认为这样你会得到读者最好的关注
另外,如果你在很多地方使用它,也许你可以编写你自己的NumberUtil
类或者类似的东西,在那里你可以定义你的否定方法。让它像:
long quantityToDecrease=NumberUtil.negate(reservation.getQuantity())代码>我使用了内联注释并在其周围空行:
// note the unary minus
long quantityToDecrease = -reservation.getQuantity();
但我也发现@Kayaman建议的解决方案很有吸引力,因为它使代码读起来更像所描述的业务逻辑。我使用了内联注释和空行:
// note the unary minus
long quantityToDecrease = -reservation.getQuantity();
但我也发现@Kayaman建议的解决方案很有吸引力,因为它使代码读起来更像所描述的业务逻辑。创建一个名称良好的方法,只返回-reservation.getQuantity()编码>并改用它。即quantityToDecrease=notAvailable(预订)代码>。您始终可以添加注释。请在注释前面加零,或加注释,或两者都加。不要遵循空洞的建议来实现一个单独的方法:这将是我在代码审查中删除的第一件事。在任何情况下,它都只会转移问题。指出它可能并不重要,因为指出代码在这样一个步骤中的工作方式并不重要?请创建一个名称良好的方法,该方法只返回-reservation.getQuantity()编码>并改用它。即quantityToDecrease=notAvailable(预订)代码>。您始终可以添加注释。请在注释前面加零,或加注释,或两者都加。不要遵循空洞的建议来实现一个单独的方法:这将是我在代码审查中删除的第一件事。在任何情况下,它只会转移问题。指出它可能并不重要,因为指出代码如何为这样一个步骤工作并不重要?