Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

steller

ClassCastException

Mensagens Recomendadas

steller    0
steller

boas! podiam-me dizer o significado dessa excepção?

ClassCastException

Já vi na API mas não entendo, obrigado :wallbash:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
steller    0
steller

tive a ver com mais atenção

Thrown to indicate that the code has attempted to cast an object to a subclass of which it is not an instance. For example, the following code generates a ClassCastException

Vector lista = new Vector();
	for(int i=0; i<=listaCompromissos.size(); i++){
		if((((Reserva)listaCompromissos.elementAt(i)).obtemCategoria()).equals(v)){
			lista.add(listaCompromissos.elementAt(i));
		}
	}
	return lista;

Só não percebo onde está o problema

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dabubble    0
Dabubble

o que esta a acontecer e que pelo menos um dos objectos que esta no teu vector listaCompromissos nao e do tipo Reserva.

se estas a guardar varios tipos diferentes de objectos na lista faz isto:

for (int i = 0 ; i < listaCompromissos.size() ; i++){
    Object element = listaCompromissos.elementAt(i);
    if (element instanceof Reserva){
        Reserva reserva = (Reserva)element;
        if (reserva.equals(v)){
             lista.add(reserva);
        }
    }
}

PS: O codigo pode ser mais sucinto mas assim da para perceber melhor.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
UnKnowN    0
UnKnowN

Thanks a quem moderou o meu post - resposta rapida rules mas nao sei as tagsno GeSHI de cor

As Tag's são:

[ /code ] (sem espaços)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
steller    0
steller

bem nao tou a conseguir resolver este problema da excepçao, por muito que eu altere tá-me sempre a aparecer! Será que me podiam dar uma solução possivel para o exemplo que eu dei em cima?

Obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dabubble    0
Dabubble

põe ai o resto do codigo que a gente resolve, se puderes posta tudo, senao pelo menos as definicoes da classe reserva e o metodo /altura no codigo em que as colocas no vector...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
steller    0
steller

Fogo sou tão urso lol

Tava agora a copiar o código para aqui quando vi o problema, eu queria adicionar um elemento na posição 0.

Então fazia:

listaCompromissos.add(0);

Ora isto estava a adicionar o numero 0 na proxima posiçao disponivel, agora já alterei para:

listaCompromissos.add(0, c);[/code']

e já corre o programa! E pensar que tive ontem a noite toda de volta disto, faz mesmo bem dormir um bocado eheh

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade