Ajuda no while

4 respostas
kaede

boa tarde! amigos, estou precisando de uma ajuda para este while. Preciso que enquanto list for vazio ele exibe um JOptionPane ...o metodo selectFilmes loação esta certo, mas não sei como faço o teste se a classe dao retornar como nulo, por exemplo se o filme com codigo 1 não estiver locado ele retorna vazio??? Agradeço se aalguem puder me ajudar...

String comando;
       String valor =txtCodFilme.getText();
        
        EmprestimosDAO dao= new EmprestimosDAO();
       EmprestimosVO vo= new EmprestimosVO();
       Collection list = new ArrayList<EmprestimosVO>(); 
       Collection list2 = new ArrayList<EmprestimosVO>();
              
        
            
       if (!txtCodFilme.getText().equals("")) {
            comando = "codFilme";
            //comando= "codigo";
            list = dao.selectFilmesLocacao(comando,valor);
       *****   while(list.equals("")) {
                JOptionPane.showMessageDialog(null,"Este Filme não está Locado!!! ");
           }
       
        }
        
                      
       Iterator i= list.iterator();
       DefaultTableModel modelo = (DefaultTableModel) tableDev.getModel();
        
       
         while(i.hasNext()){
            
               Object elemento = i.next();
               FilmesLocacaoVO palavra=(FilmesLocacaoVO)elemento;
              
               String filme1 = txtCodFilme.getText();
               int codFilme1 = palavra.getCodigo();
               
               String codFilme = Integer.toString(codFilme1);
               txtCodCli.setText(codFilme);                             
                          
               String filme=palavra.getNomeFilme();
               txtNomeFilme.setText(filme);
               
               int novoValor= palavra.getCodigo();
               valor = Integer.toString(novoValor);//valor passa a valer o codigo da locação
         }

4 Respostas

khaoz

Tenta utilizar list.isEmpty() no lugar de list.equals("");

marcosharbs

ou

list.size()==0;
kaede

valeu khaoz deu certo!!!Obrigado. Agradeço tambem sua ajuda marcosharbs.

peczenyj

O Certo é o DAO nunca retornar nulo :wink:

Senão vc tem uma NullPointerException

Ja foi proposta essa solução (que gostei muito)

if (i.hasNext()){ do { // mostra resultado(s) } while(i.hasNext()); } else { // não tem nenhum resultado }

Criado 11 de novembro de 2008
Ultima resposta 11 de nov. de 2008
Respostas 4
Participantes 4