C 什么';用if语句破案的正确形式是什么?
你会这样写吗:C 什么';用if语句破案的正确形式是什么?,c,C,你会这样写吗: // This is just something a came up to explain my question switch(a) { case 2: if(x >= 1) { dosomething(); break; } else { dosomethingelse(); break; } default: break; } switch(a) {
// This is just something a came up to explain my question
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
break;
}
else
{
dosomethingelse();
break;
}
default:
break;
}
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
default:
break;
}
switch(a){
case 1:
if( a > b ){
// do something
}else{
//do some other thing
}
break;
case 2:
if( a > c ){
// do something
}else{
//do some other thing
}
break;
default
break;
}
或者像这样:
// This is just something a came up to explain my question
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
break;
}
else
{
dosomethingelse();
break;
}
default:
break;
}
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
default:
break;
}
switch(a){
case 1:
if( a > b ){
// do something
}else{
//do some other thing
}
break;
case 2:
if( a > c ){
// do something
}else{
//do some other thing
}
break;
default
break;
}
break
应该在if/else语句内部还是外部?有没有正确的方法,或者没有关系?这两种方法都是正确的,但最好像第二种方法一样,因为你应该在每个案例陈述之后立即进行中断。此外,它倾向于具有更可读性和可管理性的代码,因为您可能会在以后更改if
部分,从而丢失break
s
所以你可以这样做:
// This is just something a came up to explain my question
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
break;
}
else
{
dosomethingelse();
break;
}
default:
break;
}
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
default:
break;
}
switch(a){
case 1:
if( a > b ){
// do something
}else{
//do some other thing
}
break;
case 2:
if( a > c ){
// do something
}else{
//do some other thing
}
break;
default
break;
}
两种方法都是正确的,但最好像第二种方法那样进行,因为您应该在每个案例陈述之后立即进行中断。此外,它倾向于具有更可读性和可管理性的代码,因为您可能会在以后更改
if
部分,从而丢失break
s
所以你可以这样做:
// This is just something a came up to explain my question
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
break;
}
else
{
dosomethingelse();
break;
}
default:
break;
}
switch(a)
{
case 2:
if(x >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
default:
break;
}
switch(a){
case 1:
if( a > b ){
// do something
}else{
//do some other thing
}
break;
case 2:
if( a > c ){
// do something
}else{
//do some other thing
}
break;
default
break;
}
我倾向于第二种选择,更清楚的是,案例陈述确实有一个中断
如果If中有中断,通常是使case语句短路,使其无法继续执行。尽管如此,还是要小心短路,因为短路会让事情变得更混乱/更容易出错,而且通常是在开关中做得太多的症状。我会选择第二个选项,它倾向于更清楚地表明case语句确实有中断
如果If中有中断,通常是使case语句短路,使其无法继续执行。尽管如此,还是要小心短路,因为短路会让事情变得更混乱/更容易出错,而且通常是在开关中做得太多的症状。如上所述,第二个选项更可取,因为可以避免重复中断。然而,我还想建议,违约中断是没有必要的。由于默认值往往是执行的最后一个选项。如上所述,第二个选项更可取,因为可以避免重复中断。然而,我还想建议,违约中断是没有必要的。由于默认值往往是最后执行的选项。通常,您需要一个退出点,因此重量相等的if/else链应该在底部有断点
if(a >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
一个常见的异常是对错误条件进行预测试,并在执行操作之前爆发
if(a < 1)
{
handle_error();
break;
}
dosomething();
break;
if(a<1)
{
handle_error();
打破
}
dosomething();
打破
通常,您需要一个退出点,因此重量相等的if/else链的底部应该有一个断点
if(a >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
break;
一个常见的异常是对错误条件进行预测试,并在执行操作之前爆发
if(a < 1)
{
handle_error();
break;
}
dosomething();
break;
if(a<1)
{
handle_error();
打破
}
dosomething();
打破
这两种方法都可以,但第二种方法肯定是可行的。第一种方法打破了逻辑结构,这从来都不是一种好的做法。这两种方法都可以,但第二种方法肯定是这样做的。第一个选项打破了逻辑结构,这从来都不是一个好的实践。一般来说,第二个选项是首选的,有时这完全取决于您的业务测试用例。如果存在多个if-else梯形图,则将使用Switch case,以提高代码的效率和可读性。现在要回答您的问题,请在if/else语句内部还是外部?
场景1:如果你的区块中只有If和else,那么break在哪里并不重要。无论如何,只执行一个bock
场景2:不管case块中的条件如何,都要执行一些代码,然后必须在末尾加上break。Ex.
switch(a)
{
case 2:
if(a >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
doSomethingForthisCase();
break;
default:
break;
}
开关(a)
{
案例2:
如果(a>=1)
{
dosomething();
}
其他的
{
dosomethingelse();
}
dosomethingforthicase();
打破
违约:
打破
}
你还可以考虑更多的场景,比如在其他场景和最后一个场景中放置break。在这种情况下,如果条件满足,则doSomethingForthisCase()代码>将执行,否则只有else块将执行,等等。一般来说,第二个选项是首选的,有时这完全取决于您的业务测试用例。如果存在多个if-else梯形图,则将使用Switch case,以提高代码的效率和可读性。现在要回答您的问题,请在if/else语句内部还是外部?
场景1:如果你的区块中只有If和else,那么break在哪里并不重要。无论如何,只执行一个bock
场景2:不管case块中的条件如何,都要执行一些代码,然后必须在末尾加上break。Ex.
switch(a)
{
case 2:
if(a >= 1)
{
dosomething();
}
else
{
dosomethingelse();
}
doSomethingForthisCase();
break;
default:
break;
}
开关(a)
{
案例2:
如果(a>=1)
{
dosomething();
}
其他的
{
dosomethingelse();
}
dosomethingforthicase();
打破
违约:
打破
}
你还可以考虑更多的场景,比如在其他场景和最后一个场景中放置break。在这种情况下,如果条件满足,则doSomethingForthisCase()代码>将执行,否则只有else块将执行,等等。我不知道这是否只是一个坏例子,但在这种情况下,会执行'dosomethingelse()'吗?是的,条件应该是类似于'x'的东西对不起,我只是写了我想到的第一件事哈哈,这是个坏例子,但至少你明白我的意思!谢谢你修复它@KeithNicholas!!!我不知道这是否只是一个坏例子,但是,在这种情况下,会执行'dosomethingelse()'吗?是的,条件应该是带有'x'之类的东西对不起,我只是写了我想到的第一件事哈哈,这是个坏例子,但在lea