我有一个java类,里面有一个方法,需要根据现在遇到的条件返回一些整数值,我在类的方法中放了一些if...else
条件,如下所示,并在评论中写了何时执行此条件。
请告知方法def()
if
条件中的逻辑是否正确,如果执行了任何条件,请告知我是否检查剩余条件。
class abc
{
private static SUCCESS = 1;
private static FAILURE = 2;
public void int def()
{
if (a=20 && b==30)
{
if (c==30 && d==40) // nesting IF condition will go if a=20 & b=30
{ // do something
return SUCCESS; // IF this condion is met will it check remaing conditions or not
}
else
{
return FAILURE; // IF this condion is met will it check remaing conditions or not
}
}
else if( g==50 && d==60)
{
// do something
if (t==56 && p==98) // nesting IF condition will go if g=50 & d=60
{
// do something
return SUCCESS; // IF this condion is met will it check remaing conditions or not
}
return FAILURE; // IF this condion is met will it check remaing conditions or not
}
else
return FAILURE; // default return means if any othe if or else if block is satisfied then this default value will be returned from the method
}
}
答案 0 :(得分:0)
那应该是相同的
if ((a==20 && b==30 && c==30 && d==40) || (g==50 && d==60 && t==56 && p==98))
return SUCCESS;
else
return FAILURE;
答案 1 :(得分:0)
如果你错过了相同的
,那么第一个if (a==0 && b==30)
在两个if中你可以删除else字(和括号)只是为了避免一些没有必要的行。
答案 2 :(得分:0)
您的逻辑是否正确尚不清楚,因为您尚未提供有关其如何工作的规范。
但是,您可能至少遇到一个问题:
if (a=20 && b==30)
因为=
几乎肯定是==
。
此外,如果您摆脱产生以下因素的心态,您会发现您的代码更容易理解:
if (something)
return something;
else
do_something_else;
如果将其更改为以下内容,可读性会大大增加:
if (something)
return something;
do_something_else;
尤其是当你有多个像你一样的层时。
关于你的意见:
如果满足此条件,它是否会检查剩余条件。
答案是否定的。从函数中return
的那一刻,该函数中不再执行任何代码。