当我在我的 Java 代码上运行 PMD 时,它显示的错误消息之一是“STWeb 类具有 20 的圈复杂度”。通常我的java类是这样的
public class STWeb implements STWebService {
public String getData(RequestData request)
{
validate(request);
}
public boolean validate(Data[] formdata)
{
if(formdata.length==1)
//do this
else if(formdata.length==3)
//do this
else if(formdata.length==4)
//do this
else if(formdata.length>4)
//do this
else if(formdata.length==2)
{
if(formdata[0].getName.equals("OIY"))
{
}
/ And many more if else here
}
}
}
如您所见,根据我的业务需求,我需要使用许多 if 和 if else 对类进行编码,因此循环复杂性增加的原因,请告诉我根据标准的可行方法是什么?