Vídeo: Dos objectes sempre seran iguals quan el seu mètode compareTo () retorna zero?
2024 Autora: Lynn Donovan | [email protected]. Última modificació: 2023-12-15 23:44
Això és recomanat això comparat amb només torna 0, si una trucada a és igual activat els mateixos objectes faria tornar veritat: comparat amb (e2) == 0 té el mateix valor booleà com e1. és igual (e2) per a cada e1 i e2 de la classe C. Tingueu en compte que null és no és una instància de cap classe, i e.
A més, és possible que equals () torni fals encara que els continguts de dos objectes siguin iguals?
4 respostes. En java el mètode public boolean és igual ( Objecte obj) s'hereta del Objecte . No obstant això, la implementació del mètode tal com es defineix a la Objecte classe és que el és igual mètode serà tornar si i només si el dos objectes que es comparen són els mateix instància.
Posteriorment, la pregunta és, per què compareTo () hauria de ser coherent amb el mètode equals () a Java? Això és així perquè la interfície del mapa es defineix en termes de és igual operació, però un mapa realitza totes les comparacions clau utilitzant-lo comparat amb (o comparar) mètode , doncs dues claus que es consideren igual per això mètode són, des del punt de vista del mapa ordenat, igual.
Tenint això a la vista, quina diferència hi ha entre el mètode == equals () i compareTo ()?
comparat amb : Compara lexicogràficament dues cadenes. és igual : compara aquesta cadena amb l'objecte especificat. comparat amb compara dues cadenes pels seus caràcters (al mateix índex) i retorna un nombre enter (positiu o negatiu) en conseqüència. és igual() comprova si dos objectes són iguals o no i retorna un booleà.
Podem anul·lar el mètode compareTo?
Substituïu el mètode compareTo Hauria de retornar un nombre enter negatiu (normalment -1), si l'objecte activador actual és inferior al passat un , i un enter positiu (normalment +1) si és més gran que, i 0 si és igual. mètode compareTo should llança una excepció si l'objecte passat té un tipus incompatible o nul.
Recomanat:
Està Java orientat a objectes o basat en objectes?
Java és un exemple de llenguatge de programació orientat a objectes que admet la creació i l'herència (que és la reutilització del codi) una classe d'una altra. VB és un altre exemple de llenguatge basat en objectes, ja que podeu crear i utilitzar classes i objectes, però no s'admet l'herència de classes
Quin és el tipus de retorn d'un mètode que no retorna cap valor?
Retorn d'un valor d'un mètode Si un mètode no retorna un valor, s'ha de declarar que retorna nul. Tanmateix, el mètode pop() de la classe Stack retorna un tipus de dades de referència: un objecte. Els mètodes utilitzen l'operador de retorn per retornar un valor. Qualsevol mètode que no es declari nul ha de contenir una declaració de retorn
Com saps si dos Hashmaps són iguals?
Si volem comparar mapes hash per claus, és a dir, dos mapes hash seran iguals si tenen exactament el mateix conjunt de claus, podem utilitzar HashMap. funció keySet(). Retorna totes les claus del mapa a HashSet. Podem comparar el hashset de claus dels dos mapes mitjançant Set
Per què dos flocs de neu mai són iguals?
Tothom sap que no hi ha dos flocs de neu iguals, un fet que es deriva de la manera com els cristalls es couen al cel. La neu és un cúmul de cristalls de gel que es formen a l'atmosfera i conserven la seva forma mentre cauen col·lectivament a la Terra
Quin és l'ús del mètode d'anul·lació d'iguals a Java?
Sobreescriu equals i hashCode a Java equals() mètode s'utilitza per comparar objectes per a la igualtat mentre que hashCode s'utilitza per generar un codi enter corresponent a aquest objecte