需要有关 NPath 复杂性的启示

Need enlightment about NPath complexity

我将 PMD 添加到我的 Eclipse 工作区并且我正在清理代码。

我最复杂的方法说它的 NPath 复杂度为 804,没问题,它可能需要重构。

但是我有一些看起来相当简单的东西,它的 NPath 复杂度为 3125,这似乎是错误的:

public void toUpperParams() {
    valueParam1 = StringUtils.isNotEmpty(valueParam1) ? valueParam1.toUpperCase() : null;
    valueParam2 = StringUtils.isNotEmpty(valueParam2) ? valueParam2.toUpperCase() : null;
    valueParam3 = StringUtils.isNotEmpty(valueParam3) ? valueParam3.toUpperCase() : null;
    valueParam4 = StringUtils.isNotEmpty(valueParam4) ? valueParam4.toUpperCase() : null;
    valueParam5 = StringUtils.isNotEmpty(valueParam5) ? valueParam5.toUpperCase() : null;
}

我是不是漏掉了什么?

似乎三元增加了NPath因子。 我可以找到以下两个解释:

Question on Guthub

Question on Whosebug

我认为你没有遗漏任何东西。根据我的计算,根据以下文章中给出的定义,NPath 应该为 10:NPath complexity