Как упомянул @Andrey, вы можете использовать оператор if
или if-else
.Во многих случаях такие циклы, как while
, for
являются взаимно-однозначными заменами if-else
и goto
.
. Вам также следует рассмотреть возможность использования операторов break
и continue
в качестве@ Оли сказал выше.
В некоторых редких случаях вы можете использовать исключение (я не знаю, поддерживает ли это Matlab) для «возврата».Это несколько спорный, но, возможно, в вашем случае это будет соответствовать
redothat:
foobar()
...
А внутри Foobar () в каком-то месте у вас есть
if cond
goto redothat;
end
вы можете сделать:.
1020 *
А внутри foobar () в каком-то месте у вас есть
if cond
throw YourApplicationException();
end
Или вы можете сделать что-то вроде этого:
вы можете сделать:
boolean isOk = false;
while(! isOk){
try {
foobar();
...
isOk=true;
}
catch(YourApplicationException e){
//do nothing, continiue looping
}
}