Preciso colocar quantos caracteres contem a String!!
Caso seja digitado mais que 20 caracteres… a mensagem vai para o else.
Eu vi alguma cois sobre o comando int length() que retorna nº caracteres contidos na String corrente…mas eu não sei usar esse comando…help pessoal.
nome=nome.trim(); if(nome.length()>= 1 && nome.length() <= 20) break;elseJOptionPane.showMessageDialog(null,"Deve ser um nome contendo entre 1 e 20 caracteres","Erro",0); }
Junior pelo que eu vi o seu codigo está certo. Só fiz pequenas melhorias como declarar nome como String para poder utilizar o metodo lenght(), e para comparar se a pessoa não digitou nada tambem utilizei o metodo equals. ta ai o codigo com as modificações
if(nome==null||[b]nome.equals(""))[/b]System.exit(0);nome=nome.trim();if(nome.length()>=1&&nome.length()<=20)break;elseJOptionPane.showMessageDialog(null,"Deve ser um nome contendo entre 1 e 20 caracteres","Erro",0);}
A
AndreiTognoloPJ
Pois é…
Não entendi a dúvida, o código está certo.
Porém me surgiu uma dúvida. Por convenção, este método
deveria se chamar getLength() e naum apenas lenght() , não é??
J
juniorribeiroPJ
while(true){nome=JOptionPane.showInputDialog(null,"Nome do aluno","Informe",3);if(nome == null) System.exit(0);//Se for vazio, sai e vai para o elsenome=nome.trim();//tira os espaços no inicio e no final. if(nome.length() >= 1 && nome.length() <= 20) break;//length conta quantos caracteres tem no texto.elseJOptionPane.showMessageDialog(null,"O nome contém: " + nome.length() + " caracteres" +"\nDeve ser um nome contendo entre 1 e 20 caracteres","Erro",0); }
S
sergiotabordaPJ
“AndreiTognolo”:
Pois é…
Não entendi a dúvida, o código está certo.
Porém me surgiu uma dúvida. Por convenção, este método
deveria se chamar getLength() e naum apenas lenght() , não é??
Não porque é um método calculado. Lembrando que uma String é - supostamente - um array especial de char então length() retorna o numero de char , ou seja o tamanho do array de char que a String encapsula. Length não é uma propriedade da String é um método utilitário para saber quantos chars tem.
Notar que length() retorna o numero de char e não necessáriamente o numero de caracteres. A equivalencia só existe em algumas línguas. Por isso, a partir do Java 5 existe o método: