gpt4 book ai didi

java - PMD 规则冲突 :A method should have only one exit point,,那应该是方法中的最后一条语句

转载 作者:搜寻专家 更新时间:2023-10-31 19:29:35 25 4
gpt4 key购买 nike

有时我发现一些PMD规则相互冲突,因此你不能写出满足所有PMD规则的代码。

例如,以下两个规则似乎相互排斥:“将对象分配给 null 是一种代码味道。考虑重构。”和“一个方法应该只有一个退出点,而且应该是方法中的最后一条语句”

下面是我的示例代码:

enter image description here

如果我使用get1(),我就违反了前一条规则,如果我使用get2(),那么我就违反了后一条规则。我更喜欢 A 方法应该只有一个导出点,但我不希望 PMD 报告“将对象分配给 null 是一种代码味道”,有人有什么好主意吗?非常感谢:)

最佳答案

在这两种情况下,我都会使用条件运算符:

return condition > 5 ? Integer.valueof(123) : null;

不过,就我个人而言,试图坚持一个导出点。太多时候这会使代码不那么可读 - 通常你可以在方法开始时告诉返回值应该是什么(例如,因为它是一个基本情况)......那为什么不直接返回呢?教条地坚持“只有一个导出点”的代码通常以不必要的嵌套代码结束,这样就更难搜索了。

关于java - PMD 规则冲突 :A method should have only one exit point,,那应该是方法中的最后一条语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10513098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com