Хм

В джаве, оказывается, нет &&= .
Пытался найти почему так, но пока убедительных резонов не нашёл.


Cross-posted from ZLog

4 thoughts on “Хм

  1. vnst Post author

    Зато в джаваскрипте есть ===

    🙂

    А что такое оператор &&= и в каком примере его можно использовать?

    1. gmz Post author

      В джаве два булевских оператора “и” – & и &&, но только один compound operator “и” : &=
      Объяснения что я видел сводятся к тому, что &&= и &= были бы полностью эквивалентны.

      boolean1 &= boolean2 это boolean1 = boolean1 & boolean2
      boolean1 &&= boolean2 было бы boolean1 = boolean1 && boolean2

      что правда, но неубедительно. “expr” и “+expr” тоже всегда эквивалентны, но лишний плюс компилятору не мешает.

      1. vnst Post author

        Если я правильно понимаю, то

        b &&= c;

        эквивалентно

        b = b && c;

        Типичный syntactic sugar. Трудящимся сана видимо не понравился шугар 🙂

    2. gmz Post author

      Сорри, я чепуху написал.
      boolean1 = boolean1 & boolean2
      и
      boolean1 = boolean1 && boolean2

      не эквивалентны, и значит я пока не видел никаких правильных объяснений, даже неубедительных.

Comments are closed.