我正在查看a path finding tutorial,我注意到void
方法中的return
语句(类PathTest
,第126行):
if ((x < 0) || (y < 0) || (x >= map.getWidthInTiles()) || (y >= map.getHeightInTiles())) {
return;
}
我是Java的新手。有人能告诉我为什么它在那里吗?据我所知,return
在void方法中是不允许的。
我正在查看a path finding tutorial,我注意到void
方法中的return
语句(类PathTest
,第126行):
if ((x < 0) || (y < 0) || (x >= map.getWidthInTiles()) || (y >= map.getHeightInTiles())) {
return;
}
我是Java的新手。有人能告诉我为什么它在那里吗?据我所知,return
在void方法中是不允许的。
8条答案
按热度按时间ffx8fchx1#
它只是在该点退出方法。一旦
return
被执行,其余的代码将不会被执行。例如。
请注意,编译器足够智能,可以告诉您某些代码无法访问:
xytpbqjk2#
你可以在一个void方法中使用
return
,但你不能 * 返回任何值 *(就像在return 5;
中一样),这就是为什么他们称之为 void 方法。有些人总是用return语句显式地结束void方法,但这不是强制性的。它 * 可以 * 用于提前离开函数,但是:dzhpxtsq3#
关键字只是从调用堆栈中弹出一个帧,将控件返回到函数调用后面的行。
7rtdyuoh4#
Java语言规范规定,如果方法返回void,则可以使用不带表达式的return。
hk8txs485#
它退出函数并不返回任何内容。
类似
return 1;
的值是不正确的,因为它返回整数1。dxxyhpgq6#
它的功能与具有指定参数的函数的返回相同,除了它不返回任何东西,因为没有任何东西要返回,并且控制被传递回调用方法。
yrefmtwq7#
看这个例子,你想有条件地添加到列表中。如果没有“return”,所有的if都将被执行并添加到ArrayList中!
sqxo8psd8#
public void run(){
// body }
} ``
} return语句不应该出现在void方法中,因为不能指定返回值。