[Resolvido] Cadastro/Consulta

Boa noite…Alguem ajuda eu…

To tentando fazer um programa onde possa cadastrar hotéis e que permita o usuário a pesquisar o hotel que tenha a comodidade desejada. O cadastro saiu de boa, mas na hora de consultar fica tenso. Ele nao exibe o hotel cadastrado.

Ex

cadastro do hotel

Nome do hotel: exemplo 1

Endereço: exemplo 1

classificação do hotel (estrelas) : exemplo 1

numero de quartos: exemplo 1

Hotel possui piscina (s/n): s

agora eu permito que o usuário escolha pesquisar os hoteis pelas comodidades que eles oferecem

Escolha a comodidade desejada
(1) piscina
(2)…

o usuário digita 1, mas o programa informa que não há hotel com piscina cadastrado


public class Hotel {
	
    /**
     * ATRIBUTOS
    */
        // Características básica do hotel
	private String nome;
	private String endereco;
	private String classificacao;
	private String numeroQuartos;
	// Facilidades
	private String piscina;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public String getClassificacao() {
		return classificacao;
	}

	public void setClassificacao(String classificacao) {
		this.classificacao = classificacao;
	}

	public String getNumeroQuartos() {
		return numeroQuartos;
	}

	public void setNumeroQuartos(String numeroQuartos) {
		this.numeroQuartos = numeroQuartos;
	}

	public String getPiscina() {
		return piscina;
	}

	public void setPiscina(String piscina) {
		this.piscina = piscina;
	}
	
	
	

}
import java.util.*;
import javax.swing.*;

public class Consulta {

	//Constantes
	
		// Cadastro
	    private static final int CADASTRAR = 00;
	
		//Facilidades
	    private static final int CONSULTAR = 11;
	    
		private static final int PISCINA = 1;
		private static final int RESTAURANTE = 2;
		private static final int AUDITORIO = 3;
		private static final int ACESSO_INTERNET = 4;
		private static final int ACADEMIA = 5;
		private static final int ESTACIONAMENTO = 6;
		
		//OPERAÃ?Ã?ES
		private static final String PROMPT_OPERACAO = 
			"\n Escolha a opção desejada: " +
			"\n (00) CADASTRAR" +
			"\n (11) CONSULTAR";
		
		private static final String PROMPT_OPERACAO_FACILIDADES = 
			"\n Escolha a facilidade desejada para consulta os hoteis: " +
			"\n (1) PISCINA" +
			"\n (2) RESTAURANTE" +
			"\n (3) AUDITORIO" +
			"\n (4) ACESSO A INTERNET" +
			"\n (5) ESTACIONAMENTO";
		
		// FLAG
		private static final String PROMPT_CONTINUA = "DESEJA CONTINUAR?";
		
		
		// PERGUNTAS DO CADASTRO
		
		 private static final String PROMPT_NOME = "Informe o nome do hotel: ";
		 private static final String PROMPT_ENDERECO = "Informe o endereço do hotel: ";
		 private static final String PROMPT_CLASSIFICACAO = "Informe a classificação do hotel (estrelas): ";
		 private static final String PROMPT_NUMERO_QUARTOS = "Informe o número de quartos do hotel: ";
		 private static final String PROMPT_PISCINA = "O hotel possui piscina (s/n)?: ";
		
		 
		 // Criação de um objeto ArrayList para armazenar os dados das pessoas
		 private static ArrayList cadastro = new ArrayList();
		
		
		 
//############################### IN�CIO: MAIN #######################################
	
		 /**
		   * Método main.
		   */
		  public static void main(String[] args) {

		    int continua;
			// Entrada dos dados de cadastro
		    do {

		  
		      int op = Integer.parseInt(JOptionPane.showInputDialog(null, PROMPT_OPERACAO, "Menu Principal", JOptionPane.INFORMATION_MESSAGE));
		      switch (op) {
		        case CADASTRAR:
		          cadastrar();
		          break;
		        case CONSULTAR:
		          consultar();
		          break;
		        default:
		          JOptionPane.showMessageDialog(null, "Opção inválida ou não implementada.", "ATEN��O!", JOptionPane.ERROR_MESSAGE);
		      } // fim do switch

		      // Perguntar se o usuário quer continuar
		      continua = JOptionPane.showConfirmDialog(null, PROMPT_CONTINUA, "Continuar?", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);

		    } while(continua == JOptionPane.YES_OPTION);

		  } // fim do main	 
//############################### FIM: MAIN ##########################################
		  
		  
//############################### INICIO: CADASTRAR ##################################	 
		  /**
		   * Método cadastrar.
		   */
		  public static void cadastrar() {
		    
			  Hotel hotel = new Hotel();

		      // Leitura do nome
		      hotel.setNome( JOptionPane.showInputDialog(null, PROMPT_NOME) );

		      // Leitura do endereco
		      hotel.setEndereco( JOptionPane.showInputDialog(null, PROMPT_ENDERECO) );

		      // Leitura do classificacao
		      hotel.setClassificacao( JOptionPane.showInputDialog(null, PROMPT_CLASSIFICACAO) );
		      
		      // Leitura do numero de quartos
		      hotel.setNumeroQuartos( JOptionPane.showInputDialog(null, PROMPT_NUMERO_QUARTOS) );
		      
		      // Leitura facilidades
		      JOptionPane.showMessageDialog(null, "Digite S (sim) se o hotel possui esta facilidade e N (não) para caso não possua");

                      // Picina
		      hotel.setPiscina( JOptionPane.showInputDialog(null, PROMPT_PISCINA) );
		      

		      // Adicionar o hotel na coleção
		      cadastro.add(hotel);
		  } // fim do cadastrar
  
		  
//############################### FIM: CADASTRAR ##################################### 
		  
		  
		  
//############################### INICIO: CONSULTAR ##################################	 
		  /**
		   * Método consultar
		   */
		  public static void consultar() {
		    // flag para indicar se encontrou os hoteis com a facilidade
		    boolean achei = false;

		    // solicitar que entre com a facilidade
		    int facilidade = Integer.parseInt(JOptionPane.showInputDialog(null, PROMPT_OPERACAO_FACILIDADES,
		    		"Menu Facilidades", JOptionPane.INFORMATION_MESSAGE));
		    
		    // iterador: percorre os elementos da coleção
		    Iterator i = cadastro.iterator();
		    
		    switch(facilidade){
		    
		    case PISCINA:
		    	
		    	// ERRO NÃ?O CONSEGUE ACHAR O HOTEL COM PISCINA
		    	
		    		while (!achei && i.hasNext()){
                                    
                                    Hotel h = (Hotel) i.next();

                                    if (h.getPiscina() == "s" && h.getPiscina() == "S"){

		    			JOptionPane.showMessageDialog(null, "Hotel(is) encontrado(s):" + h.getNome(), 
		    			"Resultado da Consulta", JOptionPane.INFORMATION_MESSAGE);
		    			achei = true;
                                        
		    		}// fim do if
                        }// fim do while

		    		if(!achei){
		    			JOptionPane.showMessageDialog(null, "Hotel(is) não encontrado(s)");
		    		}// fim do if
		    	break;
		    	
		    default:
		          JOptionPane.showMessageDialog(null, "OP��O INV�LIDA OU N�O IMPLEMENTADA!");
		    	
		    }
                   
		    
		   
		  } // fim do pesquisar

				  
//############################### FIM: CANSULTAR #####################################
	
}

Olha, só dei uma olhada por cima no teu código aí, mas acho que o problema pode ser na hora que você compara as strings p/ ver se o hotel tem piscina:

..
if (h.getPiscina() == "s" && h.getPiscina() == "S"){                // aqui.!         
..

Lembre-se, quando se utiliza o operador ==, você está comparando referências, e não o valor em si !

O certo seria:

if (h.getPiscina().equals("s") || h.getPiscina().equals("S"){     // troca por essa linha aqui.

Ou se você quiser simplificar um pouco mais:

if (h.getPiscina().equalsIgnoreCase("s")){            // essa é idêntica à de cima! O método equalsIgnoreCase() aceita tanto "s", quanto "S". (ignora o case-sensitive)

Além disso, na condição ali você tá fazendo: se for igual a “s” E for igual a “S” ? Isso nunca será verdadeiro mesmo.
Não seria OU !?

Confere aí se funcionou ou não.

Concordo com o GuilhermeKFreitas , pela analise do seu codigo que eu fiz, o problema deve ser esse citado por ele.

vlw gente… era isso mesmo que vcs falaram… brigadão