Equals

[code]public class WeightedEdge {

int weight; //peso do arco

Vertex init, end;  //vértice de inicio e fim do arco


//cria um arco com inicio em vo, fim em vd e peso p 

public WeightedEdge(Vertex vo, Vertex vd, int p){
	this.init = vo;
	this.end = vd;
	this.weight = p;
}

// retorna true se o objecto ref arco igual,false caso contrário
//2 arcos são iguais se ligarem os mesmos vértices

public boolean equals(Object o){
	return(o.equals(this));
}
   }	

[/code]

Eu tou com uma dúvida, gostava de saber se posso comparar o objecto com o arco assim… sabendo que apenas são considerados iguais se o objecto ref arco e 2 arcos são iguais se ligarem os mesmos vertices.
Se estiver errado gostaria de ajuda para qual a solução…
Desde já o meu muito obrigado.

Defina os atributos do objeto que são relevantes na sua identidade.

No seu caso vc deve comparar os pontos dos vértices (init, end)
já que 2 arcos são iguais se ligarem os mesmos vértices.

Lembre-se também do contrato que rege a implementação do hashCode :wink: