Imaginem que vocês precisem receber um valor vindo de uma fonte externa (mainframe, banco de dados…), esse valor deveria ser um número inteiro como string.
Você faz o parse e caso haja alguma exceção você seta um valor padrão, por exemplo 0.
Mas imagine que você tenha que ler dezenas de valores strings e convertê-los para inteiros. Você enche o código tries/catches?
Quando precisa repetir o mesmo comportamento em vários trechos do seu programa o que costuma fazer?
Crie uma função que faz essa conversão, recebendo um valor default quase não consiga…
Daí para cada dado externo que você receber, você chama a função…
P
pen_fold_uk
Já faço algo assim hoje em dia, mas são vários valores padrão, quase um para um.
worldfernando
AbelBueno:
Quando precisa repetir o mesmo comportamento em vários trechos do seu programa o que costuma fazer?
Crie uma função que faz essa conversão, recebendo um valor default quase não consiga…
Daí para cada dado externo que você receber, você chama a função…
publicclassTrataValor{publicIntegerValorInteiro(StringValor){try{returnInteger.parseInt(Valor);}catch(Exceptione){return0;}}}publicclassMain{/** * @param args the command line arguments */publicstaticvoidmain(String[]args){// TODO code application logic hereIntegeri=newTrataValor().ValorInteiro("2e34");System.out.println("Valor:"+i);Integeru=newTrataValor().ValorInteiro("234");System.out.println("Valor:"+u);}}