Turinys:
Apibrėžimas - ką reiškia palyginimo operatorius?
C # palyginimo operatorius yra dvejetainis operatorius, paimantis du operandus, kurių vertės yra lyginamos. Palyginimo operatoriai naudojami sąlyginiuose teiginiuose, ypač cikluose, kai palyginimo rezultatas nusprendžia, ar reikia vykdyti vykdymą. Jie sudaro programos srauto valdymo, žinomo kaip sąlyginis apdorojimas, raktą.
Palyginimo operatoriai apima:
- Lygybės operatorius (==) grąžina teisingus operandus, kurių vertės yra lygios.
- Nelygybės operatorius (! =) Grąžina klaidingą, jei du operandai yra lygūs.
- Mažiau nei reliacinis operatorius (<), apibrėžtas visiems skaičių ir surašymo tipams ir grąžina teisingą, jei pirmasis operandas yra mažesnis už antrąjį operandą.
- Didesnis nei reliacinis operatorius (>), apibrėžtas visiems skaičių ir surašymo tipams ir grąžina teisingą, jei pirmasis operandas yra didesnis už antrąjį operandą.
- Mažesnis arba lygus reliaciniam operatoriui (<=), apibrėžtas visiems skaičių ir surašymo tipams, ir grįžta tiesa, jei pirmasis operandas yra mažesnis arba lygus antrajam operandui.
- Didesnis arba lygus reliaciniam operatoriui (> =), apibrėžtas visiems skaičių ir surašymo tipams ir grąžina teisingą, jei pirmasis operandas yra didesnis arba lygus antrajam operandui.
Palyginimo operatoriai taip pat žinomi kaip reliaciniai operatoriai.
„Techopedia“ paaiškina palyginimo operatorius
Palyginimo operatoriai turi šias savybes:
- Valdykite vieno tipo kintamuosius ir grąžinkite boolo tipo vertę.
- Negalima tiesiogiai naudoti vartotojo apibrėžto tipo objektų palyginimui. Jei naudojamas objektams lyginti, palyginimo operatorius lygina tik objektų nuorodas, o ne duomenis, kuriuose jie yra.
- Gali būti perkrautas vartotojo nustatytais tipais, apibrėžiant statines nario funkcijas ir naudojant raktinių žodžių operatorių.
- Turi būti perkrautas poromis. Jei == yra perkrautas, ! = Turi būti perkrautas. Ta pati taisyklė taikoma poroms <ir> ir <= ir> =.
- Perkrovos palyginimo operatoriai <ir> netiesiogiai perkrauna atitinkamus priskyrimo operatorius (jei tokių yra).
- Jei == ir! = Tam tikro tipo yra perkrauti, metodai Equals () ir GetHashCode () turėtų būti atmesti.
- Negalima naudoti su konstrukcijomis, kol operatorius nėra perkrautas, kad būtų galima įdiegti palyginimo logiką.
.NET Framework klasė „System.String“ naudojama veiksmams, susijusiems su stygomis, tokiems kaip manipuliavimas, palyginimas ir sujungimas. Jis apkrauna == operatorių, kad patikrintų, ar stygų tipo operandų turinys yra lygus, ir palygina operando (-ų) nuorodą, jei jie nėra eilutės tipo. .NET Framework 4.0 versija suteikia galimybę dinamiškai spausdinti, kuria kompiliatorius gali atlikti visus reikiamus palyginimus, reikalingus konvertavimui.
Lyginant objektus, turinčius įdėtas klases, palyginimas gali būti pagrįstas nuoroda, nukreipiančia į įdėtą objektą, kurį reikia palyginti (gilus palyginimas), arba į objektų reikšmes. Šis sprendimas turėtų būti nustatytas paraiškos projektavimo etape. Palyginimui tarp slankiojo kablelio skaičių vertės turėtų būti suapvalintos iki taikymui priimtino lygio.
