Como saber se Jtextfield esta nula ou contem dados - RESOLVIDO

2 respostas
J

Boa XXXXX a todos
Gente sou novo no java e quero saber se tem como fazer o seguinte:
Vou apenas dar um exemplo.
Criei um formulario (utilizando o netbeans), com um Jtextfield (que dei o nome de tf_campo) e um botão(que dei o nome de bt_teste1),
segue a tela abaixo (vou ver se consigo)

então eu quero que, quando clicar no botão ele diga se o campo contem dados ou esta vazio.

eu acho que é com if, else.
Dei uma ação para o botão da seguinte forma

String vazio = tf_campo.getText();

if(vazio == null)
      {
          JOptionPane.showMessageDialog(null, "Campo Vazio");
      }else
      {
          JOptionPane.showMessageDialog(null, "Contem dados");
      }

Mas a jtextfield estando vazio ou não ele diz que contem dados e agora.
Por favor me ajudem a escrever este codigo

2 Respostas

V
Sempre diz que contem dados por que String apesar de se comportar como um tipo primitivo é um objeto, então toda vez que você faz:
String vazio = tf_campo.getText();
É como se estive-se fazendo para o compilador:
String vazio = new String(tf_campo.getText());
Nesse caso mesmo a string não tendo nenhum caractere não torna a String nula pois na verdade ele tem um objeto string dentro dele, o certo seria usar um método de String ".isEmpty()" que checa se está ou não vazio de fato como no exemplo abaixo.
String vazio = tf_campo.getText();

if(vazio.isEmpty())
{
JOptionPane.showMessageDialog(null, "Campo Vazio");
}else
{
JOptionPane.showMessageDialog(null, "Contem dados");
}

Espero ter ajudado, abrs.
J

Cara muito obrigado, não esperava a resposta tão rapido.

Abraços, problema resolvido.

Criado 6 de agosto de 2011
Ultima resposta 7 de ago. de 2011
Respostas 2
Participantes 2