В джаве два булевских оператора "и" - & и &&, но только один compound operator "и" : &= Объяснения что я видел сводятся к тому, что &&= и &= были бы полностью эквивалентны.
boolean1 &= boolean2 это boolean1 = boolean1 & boolean2 boolean1 &&= boolean2 было бы boolean1 = boolean1 && boolean2
что правда, но неубедительно. "expr" и "+expr" тоже всегда эквивалентны, но лишний плюс компилятору не мешает.
no subject
Date: 2010-09-24 10:29 pm (UTC):)
А что такое оператор &&= и в каком примере его можно использовать?
no subject
Date: 2010-09-24 11:29 pm (UTC)Объяснения что я видел сводятся к тому, что &&= и &= были бы полностью эквивалентны.
boolean1 &= boolean2 это boolean1 = boolean1 & boolean2
boolean1 &&= boolean2 было бы boolean1 = boolean1 && boolean2
что правда, но неубедительно. "expr" и "+expr" тоже всегда эквивалентны, но лишний плюс компилятору не мешает.
no subject
Date: 2010-09-24 11:40 pm (UTC)b &&= c;
эквивалентно
b = b && c;
Типичный syntactic sugar. Трудящимся сана видимо не понравился шугар :)
no subject
Date: 2010-09-24 11:42 pm (UTC)boolean1 = boolean1 & boolean2
и
boolean1 = boolean1 && boolean2
не эквивалентны, и значит я пока не видел никаких правильных объяснений, даже неубедительных.