lookup 方法
- Object? object
override
如果集合中存在与 object
等效的对象,则返回它。
与 contains 方法类似,检查 object
是否在集合中。如果是,则返回集合中的对象,否则返回 null
。
如果集合使用的相等关系不是同一性,则返回的对象可能不与 object
相同。某些集合实现可能无法实现此方法。如果 contains 方法是通过计算得出的,而不是基于实际的对象实例,那么可能没有特定的对象实例表示集合元素。
final characters = <String>{'A', 'B', 'C'};
final containsB = characters.lookup('B');
print(containsB); // B
final containsD = characters.lookup('D');
print(containsD); // null
实现
E? lookup(Object? object) {
if (!_validKey(object)) return null;
int comp = _splay(object as E);
if (comp != 0) return null;
return _root!.key;
}