Spec-Zone.ru › Dart 2

dart:core

метод operator ==

bool operator ==(
  1. Object other
)

Оператор равенства.

Поведение по умолчанию для всех объектов Object: возвращать true тогда и только тогда, когда этот объект и other являются одним и тем же объектом.

Переопределите этот метод, чтобы задать для класса другое отношение равенства. Переопределённый метод по-прежнему должен задавать отношение эквивалентности. То есть он должен быть:

  • Полным: он должен возвращать логическое значение для любых аргументов. Он никогда не должен генерировать исключение.

  • Рефлексивным: для всех объектов o должно быть истинным o == o.

  • Симметричным: для всех объектов o1 и o2 выражения o1 == o2 и o2 == o1 должны быть либо оба истинными, либо оба ложными.

  • Транзитивным: для всех объектов o1, o2 и o3, если o1 == o2 и o2 == o3 истинны, то o1 == o3 должно быть истинным.

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

Если подкласс переопределяет оператор равенства, ему также следует переопределить метод hashCode, чтобы сохранить непротиворечивость.

Реализация

external bool operator ==(Object other);

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-core/Object/operator_equals.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API