O problema é que você está utilizando tipos nativos
para os métodos put(Object,Object) e get(Object), que
não extendem a classe Object. Tente substituir as
linhas (dentro do laço while):

vTorre.put(rs.getInt("numero"),rs.getInt("chave"));

por

Integer numero = new Integer(rs.getInt("numero"));
Integer chave = new Integer(rs.getInt("chave"));
vTorre.put(numero,chave);
numero = null;
chave = null;


e o método

public int getChave(int nm) {
        return vTorre.get(nm);
}

por 

public Integer getChave(Integer chave) {
     return (Integer)vTorre.get(chave);
}


Note que, como a chave gerada no put é um objeto, é
rigorosamente este objeto que deve ser passado como
parâmetro para o método getChave(Integer). Se você
simplesmente gerar outro objeto com o mesmo valor int,
o objeto será diferente. Portanto, é necessário que
você armazene a chave gerada para ser usada no método
get.


Edgar Fernando Correa
[EMAIL PROTECTED]
 
--- Hugo Ribeiro <[EMAIL PROTECTED]> wrote:
> Ola pessoal,
>       estou fazendo essa classe com hashtable, mas nao
> consigo compila-la... 
>       Alguem poderia me indicar o erro deste codigo, por
> favor?
> 
> []s Hugo Ribeiro
> 
> CLASSE:
> 
> import java.util.*;
> import java.sql.*;
> 
> public class TabTorres {   
>     Hashtable vTorre = new Hashtable();
>     Modulo1 md1 = new Modulo1();
>     
>     /** Creates a new instance of TabTorres */
>     public TabTorres() {
>     }
>     
>     private void limpaTabela() {
>         vTorre.clear();
>     }
>     
>     public void geraTabela(int chvemp, Connection
> cn) {
>         limpaTabela();
>         ResultSet rs;
>         String sql;
>         Object valor;    
>         sql = "select chave, numero from emprtorres
> where empreendimento = " + chvemp;
>         rs = md1.executaSql(sql, cn); 
>         while (rs.next()) {
>             vTorre.put(rs.getInt("numero"),
> rs.getInt("chave"));
>         }
>     }
>     
>     public int getChave(int nm) {
>         return vTorre.get(nm);
>     }
> }
> 
>
************************************************************
> ERROS:
> 
> TabTorres.java [36:1] cannot resolve symbol
> symbol  : method put (int,int)
> location: class java.util.Hashtable
>             vTorre.put(rs.getInt("numero"),
> rs.getInt("chave"));
>                   ^
> TabTorres.java [41:1] cannot resolve symbol
> symbol  : method get (int)
> location: class java.util.Hashtable
>         return vTorre.get(nm);
>                      ^
> 2 errors
> Errors compiling TabTorres.
> 

=====
Edgar Fernando Correa

+55 41-9142-0228
[EMAIL PROTECTED]

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a