C# XOR-operator

C Xor Operator



De XOR-operator (exclusieve OR) is een binaire operator die met twee operanden werkt en alleen true oplevert als en wanneer precies één van deze als true evalueert. Bovendien wordt false geretourneerd. Uw talenten als C#-programmeur kunnen aanzienlijk worden vergroot door het begrijpen en gebruiken van de XOR-operator, of het nu gaat om logische besluitvorming of gegevensmanipulatie. In dit artikel zullen we het gebruik ervan in C# bespreken met behulp van enkele codefragmenten.

Voorbeeld 1:

Laten we een C#-programma doornemen dat het gebruik van de XOR-operator (^) demonstreert om de gezondheid van voedsel te bepalen op basis van de vraag of het vegetarisch is of vlees bevat. De eerste regel “using System;” is een naamruimtedeclaratie waarmee het programma toegang krijgt tot de klassen en functies die zijn gedefinieerd in de “Systeem”-naamruimte die de fundamentele typen en kernfunctionaliteit van C# bevat. De code definieert een openbare klasse met de naam “Dummy”.

Het public trefwoord geeft aan dat de klasse toegankelijk is vanuit andere delen van het programma. Binnen de klasse “Dummy” bevindt zich een statische methode met de naam “Main”. De “Main”-methode gebruikt een array van strings (string[] args) als parameter waarmee de opdrachtregelargumenten aan het programma kunnen worden doorgegeven.







Binnen de “Main”-methode worden drie Booleaanse variabelen gedeclareerd en geïnitialiseerd: “isVeg” wordt ingesteld op true, wat aangeeft of het voedsel vegetarisch is, “isMeat” wordt ingesteld op false, wat aangeeft of het voedsel vlees bevat, “IsFit” wordt aangegeven en toegewezen aan het resultaat van de XOR-operatie (isVeg ^ isMeat) die de gezondheid van het voedsel bepaalt op basis van de vegetarische status en het vleesgehalte.



De regel Console.WriteLine geeft het resultaat van de gezondheidscontrole weer met behulp van de tekenreeksinterpolatie. De waarde van “isFit” wordt weergegeven binnen de string die aangeeft of het voedsel als gezond wordt beschouwd of niet.



met behulp van Systeem ;

openbare klasse Dummy {

openbaar statisch leegte Voornaamst ( snaar [ ] arg )

{

bool isVeg = WAAR ;

bool is vlees = vals ;

bool isFit = isVeg ^ isVlees ;

Troosten. Schrijf lijn ( $ 'Is het eten gezond? : {isFit}' ) ;

}

}

Samenvattend toont deze code het concept van Booleaanse logica in C# en hoe de XOR-operator kan worden gebruikt om de logische XOR van twee Booleaanse variabelen te bepalen en de gezondheid van voedsel te evalueren op basis van de vraag of het vegetarisch is of vlees bevat.







Voorbeeld 2:

Laten we het gebruik van de XOR-operator in C# demonstreren via een ander codevoorbeeld. We zullen een bitsgewijze XOR-bewerking uitvoeren op twee gehele variabelen (n1 en n2). De code begint met “using System;” instructie die de naamruimte “Systeem” importeert om het gebruik van klassen mogelijk te maken die zijn gedefinieerd in de naamruimte “Systeem”, zoals de klasse “Console”.

De code definieert een klasse met de naam “Check” met behulp van de syntaxis “public class check”. Deze klasse bevat één enkele methode: “Mai”. De functie main() neemt de stringarray 'args' als parameter die kan worden gebruikt om de opdrachtregelwaarden door te geven aan het codeprogramma.

Binnen de Main()-methode worden twee integer-variabelen, “n1” en “n2”, gedeclareerd en geïnitialiseerd met respectievelijk de waarden 17 en 8. De waarde “n1” heeft een binaire weergave van 10001, wat betekent dat deze gelijk is aan decimaal 17, en de waarde “n2” heeft een binaire weergave van 1000, wat betekent dat deze gelijk is aan decimaal 8.

De “int Res = n1 ^ n2;” line berekent het resultaat van de XOR-bewerking tussen “n1” en “n2” met behulp van de XOR-operator (^). De uitkomst wordt bewaard in de “Res” veranderlijk. De XOR-bewerking wordt toegepast op de binaire representaties van “n1” en “n2”. Het vergelijkt elke corresponderende bit van de binaire representaties en stelt de resulterende bit in op 1 als de bits verschillend zijn en op 0 als de bits hetzelfde zijn.

Als we de XOR-bewerking uitvoeren, krijgen we het binaire resultaat van 11001, wat gelijk is aan decimaal 25. The Console.WriteLine($”Result: {Res}”); line drukt het resultaat van de XOR-bewerking af naar de console. De Console.WriteLine-methode wordt gebruikt om de tekenreeks “Result:” weer te geven, gevolgd door de waarde van de variabele “Res”. De syntaxis van {$”Result: {Res}”} wordt stringinterpolatie genoemd, waarmee we de waarde van de variabele “Res” rechtstreeks in de string kunnen insluiten.

met behulp van Systeem ;

openbare klasse Controle {

openbaar statisch leegte Voornaamst ( snaar [ ] arg )

{

int n1 = 17 ; // 10001

int n2 = 8 ; // 1000

int Res = n1 ^ n2 ;

Troosten. Schrijf lijn ( $ 'Resultaat: {Res}' ) ;

}

}

Het uitvoerconsolescherm dat in de volgende afbeelding wordt weergegeven, geeft het “25”-resultaat weer dat wordt verkregen door het gebruik van de XOR-bewerking tussen 17 en 8:

Voorbeeld 3:

Laten we naar het laatste voorbeeld van dit artikel gaan dat het gebruik van de XOR-operator in C# bepaalt. Het volgende bijgevoegde codefragment begint met “using System;” instructie die de naamruimte 'Systeem' importeert.

Vervolgens wordt een openbare klasse met de naam “Test” gedeclareerd. Deze klasse wordt hier als uitgangspunt genomen en omvat ook de methode main(). Binnen de “Main()”-methode voeren we de XOR-bewerking uit op tekenwaarden. Er worden twee “char”-variabelen, “L1” en “L2”, gedeclareerd en toegewezen met respectievelijk de waarden “M” en “R”.

Deze variabelen vertegenwoordigen de karakters. Een andere “char”-variabele met de naam “Res” wordt gedeclareerd en toegewezen met het resultaat van de XOR-bewerking tussen “L1” en “L2”. De XOR-bewerking wordt uitgevoerd via de XOR-operator “^”.

Omdat de XOR-operator werkt met gehele waarden, wordt de (char) cast gebruikt om de resulterende gehele waarde terug naar een teken te converteren. De Console.WriteLine-instructie wordt verwijderd om het resultaat af te drukken. Het gebruikt de stringinterpolatie (“$`) om de waarde van “Res” in de uitvoer op te nemen.

Wanneer het programma wordt uitgevoerd, wordt de methode main() aangeroepen en wordt de volgende uitvoer weergegeven in de console. In dit geval resulteert de XOR-bewerking tussen de tekens “M” en “R” in het bericht “?” of '.' karakter. Het resulterende teken wordt afgedrukt als onderdeel van de uitvoer.

met behulp van Systeem ;

openbare klasse Test {

openbaar statisch leegte Voornaamst ( snaar [ ] arg )

{

verkoold L1 = 'M' ;

verkoold L2 = 'R' ;

verkoold Res = ( verkoold ) ( L1 ^ L2 ) ;

Troosten. Schrijf lijn ( $ 'Resultaat: {Res}' ) ;

}

}

Dat is een gedetailleerde uitleg van de eerder verstrekte code. Het laat zien dat de XOR-operator wordt gebruikt om een ​​Bitwise XOR-bewerking uit te voeren op tekenwaarden en het resultaat af te drukken zoals weergegeven in de volgende bijgevoegde afbeelding:

Conclusie

De C# XOR-operator biedt een flexibel hulpmiddel om de bitsgewijze en logische bewerkingen uit te voeren. Hiermee kunt u met binaire bits werken en de unieke omstandigheden in Booleaanse logica uitdrukken. Met behulp van de codevoorbeelden hebben we besproken hoe de XOR-operator kan worden toegepast op Booleaanse waarden, gehele waarden en tekenwaarden om de gewenste uitvoer te krijgen. Door de XOR-operator op de juiste manier te gebruiken, kunt u uw vaardigheden als C#-programmeur verbeteren.