Tijdens het lezen van de Android-gids voor meldingen , struikelde ik Over dit:
vibratie toevoegen
U kunt de gebruiker waarschuwen met het standaard trillingspatroon of met een
trillingspatroon gedefinieerd door uw aanvraag.Om het standaardpatroon te gebruiken, voegt u “standaard_vibrate” toe aan het veld Infaults:
notification.defaults |= Notification.DEFAULT_VIBRATE;
Wat dit doet is duidelijk: het voegt de DEFAULT_VIBRATE
vlag toe aan de standaardvlaggen van het meldingsobject.
Maar wat doet de |=
operator in Java?
Het ziet eruit als een “of”, maar hoe werkt het?
Kunt u een voorbeeld geven met nummers?
bedankt
Antwoord 1, Autoriteit 100%
|=
is een operator van bitgewijze of toewijzing. Het neemt de huidige waarde van de LHS, bitwise-ors de RHS en wijst de waarde terug aan de LHS (op een vergelijkbare manier tot +=
doet met toevoeging).
Bijvoorbeeld:
foo = 32; // 32 = 0b00100000
bar = 9; // 9 = 0b00001001
baz = 10; // 10 = 0b00001010
foo |= bar; // 32 | 9 = 0b00101001 = 41
// now foo = 41
foo |= baz; // 41 | 10 = 0b00101011 = 43
// now foo = 43
Antwoord 2, Autoriteit 56%
a |= x
is a = a | x
, en |
is “bitwise inclusive of”
Telkens wanneer dergelijke vragen zich voordoen, controleer dan de officiële tutorial op operators .
Elke operator heeft een toewijzingsformulier:
+=
-=
*=
/=
%=
&=
^=
|=
<<=
>>=
>>>=
Waar a OP= x
wordt vertaald naar a = a OP x
En over bitsgewijze bewerkingen:
0101 (decimal 5)
OR 0011 (decimal 3)
= 0111 (decimal 7)
De bitsgewijze OR kan worden gebruikt in situaties waarin een set bits als vlaggen wordt gebruikt; de bits in een enkel binair getal kunnen elk een afzonderlijke Booleaanse variabele vertegenwoordigen. Als u de bitsgewijze OF-bewerking op het cijfer toepast, samen met een bitpatroon dat 1 op sommige posities bevat, resulteert dit in een nieuw cijfer met die bits ingesteld.
Antwoord 3, autoriteit 9%
Het is een korte handnotatie voor het uitvoeren van een bitsgewijze OR en een opdracht in één stap.
x |= y
is gelijk aan x = x | y
Dit kan met veel operators, bijvoorbeeld:
x += y
x -= y
x /= y
x *= y
etc.
Een voorbeeld van de bitsgewijze OF met getallen.. als een van beide bits is ingesteld in de operanden, wordt de bit in het resultaat gezet. Dus, als:
x = 0001 and
y = 1100 then
--------
r = 1101
Antwoord 4, autoriteit 6%
In dit geval, notification.defaults
is een bit array . Met behulp van |=
, voegt u Notification.DEFAULT_VIBRATE
toe aan de set standaardopties. Inside Notification
is het waarschijnlijk dat de aanwezigheid van deze specifieke waarde zal worden gecontroleerd als SO:
notification.defaults & Notification.DEFAULT_VIBRATE != 0 // Present
Antwoord 5, Autoriteit 3%
Dit is de bit Wise of Operator. Indien notifications.default 0B00000001 is in binaire vorm en melding.Default_vibrate is 0B11000000, dan is het resultaat 0B11000001.
Antwoord 6
bitwise of operator