lastKeyBefore 方法

K? lastKeyBefore(
  1. K key
)

地图中严格小于 key 的最后一个键。

如果没有找到键,则返回 null

实现

K? lastKeyBefore(K key) {
  if (key == null) throw ArgumentError(key);
  if (_root == null) return null;
  int comp = _splay(key);
  if (comp < 0) return _root!.key;
  _SplayTreeMapNode<K, V>? node = _root!._left;
  if (node == null) return null;
  var nodeRight = node._right;
  while (nodeRight != null) {
    node = nodeRight;
    nodeRight = node._right;
  }
  return node!.key;
}