返回If语句内部和外部

这可能是一个相当容易回答的问题,但它一直困扰着我。

如果在if语句中有一个return语句,在一个方法内(在Java语言中),但我在最后添加另一个作为一个全能并且为了避免错误,两个返回值都将在其他如果if语句是真的吗?

一个例子:

public int getNumber() { if( 5 > number) { return 5; } return 0; } 

结果:方法返回5,然后通过堆栈逻辑,此后不久返回0。

或者,我是否需要使用外部变量,如下所示:

 int num = 1; public int getNumber() { if( 5 > number) { num = 5; } return num; } 

结果:方法将变量num更改为5,然后返回num以供使用。 我想在这种情况下,根据变量的用法,不一定需要return语句。

提前致谢。

不,两个值都不会被退回。 return语句在那里停止执行方法,并返回其值。 事实上,如果return后有代码,编译器知道它会因为return而无法到达,那么它会抱怨。

您不需要在if之外使用变量来在最后返回它。 但是,如果您的方法冗长而复杂,则此技术有助于提高可读性和清晰度,因为只使用了一个return语句。

仅使用第一个return语句命中。 该方法然后终止。

有一些代码约定在多个return语句上皱眉,因为它们可能很难读,但我不是其中之一。 🙂