根据属性1的值分别判断属性2、属性3、属性4得到结果集
if(属性1 == xxxx){
if(属性2){}
if(属性3){}
if(属性4){}
}else{
if(属性2){}
if(属性3){}
if(属性4){}
}
有没有一种更简洁的方法,在判断之后还要做不同的操作。
没有,这样就是最简洁的,研究奇奇怪怪的算法,比如矩阵什么的反而更麻烦了,一般人都读不懂
如果不考虑后面结果的数量,那么大概也就是这么写了。比较正统规矩
如果只有4个结果,那么根据结果的条件进行判断,即if(属性1==XXXX && 属性2 == XXXX) 结果1;
你这图跟你的代码也不是同一个逻辑呀
按图里的逻辑,应该是这样
if(属性1==1)
{
if(属性2)...
}
else if (属性1==2)
{
if(属性3)...
}
else
{
if(属性4)...
}
1.首先可以从嵌套层级进行优化,外部 if else 是不是可以通过 ?:运算符进行处理
示例:属性1 == xxxx?方法一 :方法二
2.代码块抽取成方法
if(属性2){} => confition1()
if(属性3){}=> confition2()
if(属性4){}=> confition3()
3.根据条件对步骤2的方法,进行组合使用
代码看着乱,就是因为嵌套层级多。减少嵌套层级是第一步要做的