Problema no if

galera to com problema no if:

public Collection procurar(Pedidos pedidos) throws PedidosInexistenteException {
             Statement stmt = null;
	     Connection con = null;
	     ResultSet rs = null;
	     ResultSet rs2 = null;
	     Collection listaPedidos = new LinkedList();
	     StringBuffer query = new StringBuffer();
             StringBuffer query2 = new StringBuffer();
             StringBuffer query3 = new StringBuffer();
	     ClientesPessoaFisica pf = null;
	     ClientesPessoaJuridica pj = null;
	     Endereco endereco = null;
	     Pedidos pedido = null;
	     String data = null;

	     try{
               int codigoCliente = pegarCodigo(pedidos);
	       query.append("SELECT P.COD_PEDIDO, P.COD_CLIENTE, P.DATA_PEDIDO, C.NOME, C.TIPO, L.USUARIO, L.SENHA, E.COD_ENDERECO, E.NUMERO, E.RUA, E.BAIRRO, E.CIDADE, E.FONE, E.CELULAR, E.CEP, E.EMAIL FROM PEDIDOS P, CLIENTES C, LOGIN L, ENDERECO E WHERE P.COD_CLIENTE=C.COD_CLIENTE AND C.COD_CLIENTE=L.COD_CLIENTE AND C.COD_CLIENTE=E.COD_CLIENTE AND P.COD_CLIENTE="+codigoCliente+";");
	       System.out.println(query);
               con = gerenciadorBD.getConexao();
	       stmt = con.createStatement();
	       rs = stmt.executeQuery(query.toString());

	       while (rs.next()){

	         int codendereco = rs.getInt("COD_ENDERECO");
	         int numero = rs.getInt("NUMERO");
   	         String rua = rs.getString("RUA");
 	         String bairro = rs.getString("BAIRRO");
	         String cidade = rs.getString("CIDADE");
	         String fone = rs.getString("FONE");
	         String celular = rs.getString("CELULAR");
 	         String cep = rs.getString("CEP");
       	         String email = rs.getString("EMAIL");


	         endereco = new Endereco(numero, rua, bairro, cidade, fone, celular, cep, email);

	         int codCliente = rs.getInt("COD_CLIENTE");
  	         String nome = rs.getString("NOME");
                         String tipo = rs.getString("TIPO");
  	         String usuario = rs.getString("USUARIO");
      	         String senha = rs.getString("SENHA");
	         data = rs.getString("DATA_PEDIDO");
	         int codPedido = rs.getInt("COD_PEDIDO");


	         if (tipo=="F"){...
}

o problema é que to pegando mais em cima o conteudo do banco da campo tipo e ta jogando na variavel tipo F. ate ai ta ok.
o problema ta quando faço logo em seguida o if. se tipo==“F”. tipo é F e nao entra no if. alguem sabe o que ta acontecendo.

[size=“9”][color=“green”]*Editado para adicionar o BBCode :wink: Procure sempre utilizar para postar seus códigos, facilita a leitura e o entendimento… http://www.portaljava.com/home/modules.php?name=Forums&file=faq&mode=bbcode[/color][/size]

String é um objeto… teste igualdade entre objetos com equals()…

if ( tipo.equals( "F" ) ){ ... 

e se quer um troço “case-insensitive”, teste com:

if ( tipo.equalsIgnoreCase( "F" ) ){ ... 

obrigado

galera neste mesmo metodo ainda tem um problema. executei e da um erro dizendo resultset is closed. no meu banco de dados so tenho um registro de pedidos, coloquei varios system.out.println para ver o que tava acontecendo e vi que ele faz o 1 select ok e depois faz duas vezes o select de pessoaf. como se tivesse dois registro no banco. aqui esta meu codigo completo:

public Collection procurar(Pedidos pedidos) throws PedidosInexistenteException {
Statement stmt = null;
Connection con = null;
ResultSet rs = null;
ResultSet rs2 = null;
Collection listaPedidos = new LinkedList();
StringBuffer query = new StringBuffer();
StringBuffer query2 = new StringBuffer();
StringBuffer query3 = new StringBuffer();
ClientesPessoaFisica pf = null;
ClientesPessoaJuridica pj = null;
Endereco endereco = null;
Pedidos pedido = null;
String data = null;

     try{
                   int codigoCliente = pegarCodigo(pedidos);
       query.append("SELECT P.COD_PEDIDO, P.COD_CLIENTE, P.DATA_PEDIDO, C.NOME, C.TIPO, L.USUARIO, L.SENHA, E.COD_ENDERECO, E.NUMERO, E.RUA, E.BAIRRO, E.CIDADE, E.FONE, E.CELULAR, E.CEP, E.EMAIL FROM PEDIDOS P, CLIENTES C, LOGIN L, ENDERECO E WHERE P.COD_CLIENTE=C.COD_CLIENTE AND C.COD_CLIENTE=L.COD_CLIENTE AND C.COD_CLIENTE=E.COD_CLIENTE AND P.COD_CLIENTE="+codigoCliente+";");
       System.out.println(query);
           con = gerenciadorBD.getConexao();
       stmt = con.createStatement();
       rs = stmt.executeQuery(query.toString());
           int count=0;

       while (rs.next()){
	         int codendereco = rs.getInt("COD_ENDERECO");
         int numero = rs.getInt("NUMERO");
         String rua = rs.getString("RUA");
         String bairro = rs.getString("BAIRRO");
         String cidade = rs.getString("CIDADE");
         String fone = rs.getString("FONE");
         String celular = rs.getString("CELULAR");
         String cep = rs.getString("CEP");
   	         String email = rs.getString("EMAIL");


         endereco = new Endereco(numero, rua, bairro, cidade, fone, celular, cep, email);

         int codCliente = rs.getInt("COD_CLIENTE");
         String nome = rs.getString("NOME");
                     String tipo = rs.getString("TIPO");
         String usuario = rs.getString("USUARIO");
  	         String senha = rs.getString("SENHA");
         data = rs.getString("DATA_PEDIDO");
         int codPedido = rs.getInt("COD_PEDIDO");

         if (tipo.equals("F")){
                query2.append("SELECT CPF FROM PESSOAF WHERE COD_CLIENTE="+codCliente+";");
                System.out.println(query2);
            rs2 = stmt.executeQuery(query2.toString());
                System.out.println(query2);
            while (rs2.next()){
              String cpf = rs2.getString("CPF");

              pf = new ClientesPessoaFisica(codCliente, nome, tipo, endereco, usuario, senha, cpf);
              pedido = new Pedidos(codPedido, pf, data);
            }

         }else{
           query3.append("SELECT CNPJ FROM PESSOAJ WHERE COD_CLIENTE="+codCliente+";");
           rs2 = stmt.executeQuery(query3.toString());
               System.out.println(query3);
           while (rs2.next()){
             String cnpj = rs2.getString("CNPJ");

             pj = new ClientesPessoaJuridica(codCliente, nome, tipo, endereco, usuario, senha, cnpj);
             pedido = new Pedidos(codPedido, pj, data);
           }

         }

         listaPedidos.add(pedido);

       }