prevnext   » Startseite » Haupt-Referenz » Operatoren-Referenz » Operator ^, Operator ~

Operator ^, Operator ~

Die Bitfeld-Berechnung 'A eor B' durchführen. (auch rekursiv in Listen und Maps)

Syntax:

int := int1 ^ int2
string := string1 ^ int2
string := int1 ^ string2
string := string1 ^ string2
list := list1 ^ list2
map := map1 ^ map2
Anstatt '^' kann auch '~' als Operator verwendet werden.

Parameter:

int* Ganzzahlen (INT32 oder INT64), die als Bitfeld interpretiert werden.
string* Zeichenketten, die als Bitfeld interpretiert werden.
list* Zwei Listen. Auf jedes Elementepaar wird die Operation '^' angewandt.
map* Zwei Maps. Auf jedes Elementepaar wird die Operation '^' angewandt.

Beschreibung:

Sind beide Parameter Ganzzahlen oder Zeichnenketten (auch gemischt), dann werden beide Parameter als Bitfeld interpretiert um die bitweise EOR-Verknüpfung auszuführen. Bei unterschiedlichen Längen der Parameter wird der kürzere Parameter virtuell mit Null-Bits aufgefüllt.

Das Zielbit wird genau dann gesetzt, wenn genau eines der beiden Quellbits gesetzt ist.

Falls einer der beiden Parameter von Typ STRING ist, dann ist das Ergebnis ebenfalls von Typ STRING. Anderenfalls, falls einer der beiden Parameter von Typ INT64 ist, dann ist das Ergebnis ebenfalls von Typ INT64. Anderenfalls sind beide Parameter und das Ergebnis vom Typ INT32.

Sind beide Parameter eine Liste, dann werden die einzelnen Elemente mittels '^' verknüpft. Hieraus ergibt sich automatisch die Rekursion. Die Anzahl der Elemente in der Ergebnisliste entspricht die der kleineren Liste, d.h. die überzähligen Elemente der längeren Liste werden ignoriert.

Sind beide Parameter eine Map, dann werden die einzelnen Elemente mit dem selben Schlüssel mittels '^' verknüpft. Hieraus ergibt sich automatisch die Rekursion. Elemente, die sich nur in einer Map befinden, werden ignoriert.

Alle anderen Kombinationen von Parametern führem zum Ergebnis NONE, wobei die entsprechenden Fehlerbits gesetzt sind.

Siehe auch:
 eor()   ^=   |   & 

Weitere ähnliche Opratoren:

Bitweise Verknüpfung
Operator Kurzinfo
Operator & Die Bitfeld-Berechnung 'A and B' durchführen. (auch rekursiv in Listen und Maps)
Operator &=
Operator ^ Die Bitfeld-Berechnung 'A eor B' durchführen. (auch rekursiv in Listen und Maps)
Operator ^=
Operator | Die Bitfeld-Berechnung 'A or B' durchführen. (auch rekursiv in Listen und Maps)
Operator |=
Operator ~ Die Bitfeld-Berechnung 'A eor B' durchführen. (auch rekursiv in Listen und Maps)