In logical calculation, how to encounter true retention and false inversion?
for example, if there are two Boolean variables amenb, respectively, when b=true returns acentrology false, it returns! a, how to implement it with simple operation?
how should I write a xxx b / / xxx?
is actually a question of how to:
true
true
fake
Note: ternary expressions will not be considered for the time being, thank you.
like this?
var bool = true;//or false
bool ? a : !a
yours is more like XOR
console.log(!(true ^ true))//true
console.log(!(false ^ true))//false
console.log(!(false ^ false))//true
< del > a? A:! a
< / del >
< del > a & & a |! a
< / del >
next time, make it clear. The following is the answer to the revised question.
b & & a | |! B & &! a | | a
Ternary expression java is the same as javascript
the simplest
keep who? Against whom? a
? If a
is a Boolean variable, isn't that equivalent to returning true
directly? a
is true
keep true
, a
is false
take a
, isn't that still true
?
this is meaningless, so I assume that the subject wants to use a
to control another Boolean variable b
.
Let the operation result be Q
, and list the truth table:
< table >
< thead > < tr >
< th >
a
< / th >
< th >
b
< / th >
< th >
Q
< / th >
< / tr > < / thead >
< tbody >
< tr >
< td > true < / td >
< td > true < / td >
< td > true < / td >
< / tr >
< tr >
< td > true < / td >
< td > false < / td >
< td > false < / td >
< / tr >
< tr >
< td > false < / td >
< td > true < / td >
< td > false < / td >
< / tr >
< tr >
< td > false < / td >
< td > false < / td >
< td > true < / td >
< / tr >
< / tbody >
< / table >
you can get Q =! (a ^ b)
, finish. Where ^
is an XOR operation.
if b
is of another type, for scripting languages, you can use Q = a? B:! B
, for strongly typed languages, you need to specify a "reverse" value for b
, such as NULL
or something else, and then Q = a? B: NULL
, of course, you can also overload the !
operator for b
.