Vector.contains () llamará a un método llamado Object.equals (Object) en sus elementos. Su método CustomObject.equals (CustomObject) no anula equals (Object), sino que sobrecarga la firma de método igual de 1 argumento. Como tal, no será invocado por ninguna persona que llame que espera llamar a una implementación de Object.equals (Object).
Necesita reescribir el método como una anulación . Entonces:
boolean equals(Object b) { return b instanceof CustomObject && name.trim().equalsIgnoreCase(((CustomObject )b).name.trim()) ); }
Tenga en cuenta también el uso del tipo booleano primitivo como tipo de retorno: el tipo de retorno de un método de anulación debe ser una subclase estricta del tipo de retorno del método anulado y Boolean no es una subclase estricta de booleano (ya que los tipos primitivos no pueden subclasificarse) )
- ¿Qué cosas debe tener en cuenta antes de optar por un software de recursos humanos?
- ¿Hay alguna manera de que los conceptos de Bitcoin, BitTorrent, Namecoin (P2P DNS) y Tor puedan integrarse en un protocolo en el futuro?
- ¿Existe una herramienta UML mejor que la estrella UML?
- ¿Cuál es el mejor software de generación de plomo para la industria manufacturera / industrial?
- Accesibilidad: ¿Prueba aplicaciones de una sola página para los estándares AA?