Como efetuar conversao de Object para String ou int?

2 respostas
R

Pessoal,

Criei a seguinte estrutura

public class Nodo {
    //referencias para os nodos esquerdo, direito e pai do nodo atual
    private Nodo filho_esq;
    private Nodo filho_dir;
    private Nodo pai;

    //armazena a informacao desejada que sera o nome ou a data
    private Object informacao;
    //armazena a posicao da informacao no "disco rigido"
    private int posicao;
.
.
.
.
 public Object getInformacao()
    {
        return informacao;
    }

.
.
}

Como faço para converter a variavel "informaçao" em um tipo int ou String ?

Obrigado

2 Respostas

ViniGodoy
Object informacao = nodo.getInformacao();

if (informacao instanceof Integer) {
   Integer valor = (Integer)informacao;
   fazAlgumaCoisa(valor);
} else if (informacao instanceof String) {
   String valor = (String)informacao;
   fazOutraCoisa(valor);
}

Melhor ainda é deixar sua classe nodo genérica:

public class Nodo<T> {  
   //referencias para os nodos esquerdo, direito e pai do nodo atual  
   private Nodo<T> filho_esq;  
   private Nodo<T> filho_dir;  
   private Nodo<T> pai;  

   //armazena a informacao desejada que sera o nome ou a data  
   private T informacao;  
   //armazena a posicao da informacao no "disco rigido"  
  private int posicao;  

  public T getInformacao()  
  {  
      return informacao;  
  }  
}

Aí vc usa assim:

Nodo<Integer> nodo = new Nodo<Integer>();
nodo.add(10);
Integer valor = nodo.getInformacao();
R

Obrigado pela ajuda Vini, valeu mesmo

Criado 27 de novembro de 2009
Ultima resposta 27 de nov. de 2009
Respostas 2
Participantes 2