Video: Budou dva objekty vždy stejné, když jejich metoda CompareTo () vrátí nulu?
2024 Autor: Lynn Donovan | [email protected]. Naposledy změněno: 2023-12-15 23:44
To je doporučil to porovnat s pouze se vrací 0, pokud zavoláte na rovná se na stejné předměty bych vrátit se skutečný: porovnat s (e2) == 0 má to samé booleovská hodnota jako e1. rovná se (e2) pro každé e1 a e2 třídy C. Všimněte si, že null je není instancí žádné třídy a e.
Dále, je možné, aby se rovná () vrátilo false, i když je obsah dvou objektů stejný?
4 Odpovědi. V javě metoda public boolean rovná se ( Objekt obj) se dědí z Objekt . Nicméně implementace metody, jak je definována v Objekt třída je to rovná se metoda bude vrátit pokud a jenom - li a dva objekty srovnávané jsou stejný instance.
Následně je otázkou, proč by měla být metoda CompareTo () konzistentní s metodou equals () v Javě? Je tomu tak proto, že rozhraní mapy je definováno z hlediska rovná se operace, ale mapa provádí všechna klíčová srovnání pomocí svého porovnat s (nebo porovnat) metoda , takže se považují dva klíče rovnat se tímto metoda jsou z hlediska setříděné mapy rovnat se.
S ohledem na to, jaký je rozdíl mezi metodou == equals () a CompareTo ()?
porovnat s : Lexikograficky porovná dva řetězce. rovná se : Porovná tento řetězec se zadaným objektem. porovnat s porovná dva řetězce podle jejich znaků (se stejným indexem) a podle toho vrátí celé číslo (kladné nebo záporné). rovná se() zkontroluje, zda jsou dva objekty stejné nebo ne, a vrátí boolean.
Můžeme přepsat metodu CompareTo?
Přepsat metodu porovnání Měl by vrátit záporné celé číslo (obvykle -1), pokud je aktuální spouštěcí objekt menší než předaný jeden , a kladné celé číslo (obvykle +1), pokud je větší než, a 0, pokud je rovno. metoda srovnání by měl vyvolat výjimku, pokud má předaný objekt nekompatibilní typ nebo hodnotu null.
Doporučuje:
Jak můžete zjistit, zda jsou dva objekty podobné?
Pokud mají dva objekty stejný tvar, nazývají se „podobné“. Když jsou dva obrazce podobné, poměry délek jejich odpovídajících stran jsou stejné. Chcete-li zjistit, zda jsou zobrazené trojúhelníky podobné, porovnejte jejich odpovídající strany
Jak funguje metoda CompareTo?
Metoda CompareTo() funguje tak, že vrací hodnotu int, která je buď kladná, záporná nebo nulová. Porovnává objekt voláním objektu, který je argumentem. Záporné číslo znamená, že objekt, který volá, je „menší“než argument
Jak porovnáváte dva objekty v Pythonu?
Oba „je“i „==“se používají pro porovnání objektů v Pythonu. Operátor „==“porovnává hodnoty dvou objektů, zatímco „is“kontroluje, zda jsou dva objekty stejné (Jinými slovy dva odkazy na stejný objekt). Operátor „==“nám neříká, zda x1 a x2 skutečně odkazují na stejný objekt nebo ne
Co když existuje, vrátí se v SQL?
Přehled operátoru SQL Server EXISTS Operátor EXISTS je logický operátor, který umožňuje zkontrolovat, zda poddotaz vrací nějaký řádek. Operátor EXISTS vrátí hodnotu TRUE, pokud poddotaz vrátí jeden nebo více řádků. Jakmile poddotaz vrátí řádky, operátor EXISTS vrátí hodnotu TRUE a okamžitě zastaví zpracování
Jak zkontroluji, zda jsou dva řetězce stejné v C#?
Strcmp() porovnává dva řetězce znak po znaku. Pokud je první znak dvou řetězců stejný, porovná se další znak dvou řetězců. Toto pokračuje, dokud se odpovídající znaky dvou řetězců nebudou lišit nebo dokud není dosaženo znaku null ''. Je definován v řetězci