Fórum Comando Return #520302
19/05/2015
0
//Metodo não permite salvar quando a etapa anterior possui quantidade de inscrito igual a 0
Public String metodoteste(){
Etapa etapaanterior = outrometodo(etapa.codp.getid(),etapa.getNivel()-1);
//Usando etapa diferente do null, para evitar erro quando pesquisa um valor para comparação ..getQtdinscrito()==0
if(etapaanterior!=null){
if(etapaanterior.getQtdInscrito()==0){
FacesUtils.mensErro("Impossivel salvar !!);
return null; //continuar na mesma pagina e informar o erro acima
} else{
codigo gigante....
return "Sucesso";
{
} else{
codigo gigante igual o de cima
return "Sucesso";
}
}
minha dúvida, é evitar redundância no código no qual identifiquei como "códigogigante", e não quero criar um outro método para jogar esse código, para evitar futuras mudanças, pois o código que esta dentro desse metodoteste se relaciona muito no contexto do códigogigante.
Minha dúvida sobre o return, no sistema o java aceita, porém é elegante ou não fere as regras do java, ou seria certo, usar o return para ignorar o restante do código, para evitar redundância no caso da etapaanterior ser igual a null, conforme exemplo abaixo.
Public String metodoteste(){
Etapa etapaanterior = outrometodo(etapa.codpoi.getid(),etapa.getNivel()-1);
if(etapaanterior!=null){
if(etapaanterior.getQtdInscrito()==0){
FacesUtils.mensErro("Impossivel salvar !!);
return null; //continuar na mesma pagina e informar o erro acima
aqui o sistema iria encerrar o método, e não executaria o código gigante, pq eu usei um return.
}
}
...código gigante....
return "Sucesso";
}
achei um link no devemedia que fala que seria certo usar, porém talvez causaria erro, mas o erro não acontece.
"Quando encontra um comando return, Java finaliza imediatamente a execução do método e transfere o fluxo de execução ao módulo chamador substituindo o trecho do comando que o invocou pelo resultado retornado.
Qualquer código implementado depois de uma instrução return no corpo de um método não consegue ser alcançado pelo fluxo de execução tornando-se inacessível. Situações como esta não são comuns e devem ser evitadas porque provocam erros em tempo de compilação do tipo “unreachable statement”.
Leia mais em: Métodos: módulos de programa em Java – Parte 2 - Revista Easy Java Magazine 26 https://www.devmedia.com.br/metodos-modulos-de-programa-em-java-parte-2-revista-easy-java-magazine-26/27068#ixzz3ac14gjR2"
Roger Mendes
Curtir tópico
+ 0Posts
19/05/2015
Janaina Mendes
Gostei + 0
19/05/2015
Ronaldo Lanhellas
Gostei + 0
19/05/2015
Ronaldo Lanhellas
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)