Spec-Zone.ru › Dart 2

dart:core

Метод оператора ==

bool operator ==(
  1. Object other
)

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

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

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

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

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

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

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

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

Если подкласс переопределяет оператор равенства, он также должен переопределить метод 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.18.5/dart-core/Object/operator_equals.html

Spec-Zone.ru

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