Fiz um formulário, e estava fazendo um IF() para no caso, quando o cliente clicar em SALVAR a primeira coisa que o código vai ver é se ele deixou em branco o campo NOME. Se deixou em branco ele não continua o resto da gravação e para ali dando uma mensagem. Eu fiz só não reconhece.
privatevoidjButtonSalvarActionPerformed(java.awt.event.ActionEventevt){Clientecliente=newCliente();booleanok=true;cliente.nome=jTextNome.getText();if(cliente.nome==""){ok=false;JOptionPane.showMessageDialog(null,"Por favor, preencha o Campo Nome");}if(ok==true){//RESTODOCÓDIGO....}
Estas linhas que não esta dando certo:
if(cliente.nome==""){
ok=false;JOptionPane.showMessageDialog(null,"Por favor, preencha o Campo Nome");}
if (cliente.nome == null || "".equals(cliente.nome)) {
ok = false;
JOptionPane.showMessageDialog(null,"Por favor, preencha o Campo Nome");
}
Além disso, essa validação não deveria estar na interface gráfica, e sim, no construtor da classe Cliente.
C
cipolatto
pow acabei de edita meu código que postei. Eu me esqueci de coloca o cliente.nome == ""
Vou ver aqui…
C
cipolatto
thegoergen
Você que esta online, eu só declarei como booleano o ok.
Bom, eu usei este IF:
if(cliente.nome==null||"".equals(cliente.nome))
Tu poderia me explicar o quer dizer este if? e porque de colocalo na classe cliente?
Grato.
thegoergen
Bom… esse IF verifica se o que foi digitado está nulo ( não recebeu valor nenhum, sempre é bom testar isso ), ou então recebeu um valor vazio.
Aquele segundo teste é o que tu quis fazer, mas não se compara Strings com ==, sempre com o método equals.
E colocar isso na classe cliente é uma questão de arquitetura do código: A tela é só uma tela, ou seja. ela mostra coisas pro usuário e pega informações do usuário, as validações são um “nível abaixo”.
O
Oliveira.caio
if( cliente.nome.equals("")){
ok = false;
JOptionPane.showMessageDialog(null,"Por favor, preencha o Campo Nome");
}
Quando for comparar String use o equals.
C
cipolatto
thegoergen ,
mas eu tambem testei antes de postar aqui o if( cliente.nome == null ) e não funcionava.
Mas de qualquer forma agora está funcionando.
Aguardo sua resposta. Muito obrigado. Fique com Deus.
thegoergen
É que quando tu deixa em branco, vem uma String vazia, e não um null, por isso que não funcionava.
na verdade, teu erro se resumiu a comparar as Strings com ==
adriano_si
é porque o getText() retorna um valor == “” e vc estava testando só se era igual a null e não era…