singleOrNull属性

T? singleOrNull

此迭代器的单个元素,或者null

如果迭代器恰好有一个元素,则为该元素。否则,如果迭代器没有元素,或者有两个或更多的元素,则值为null

实现

T? get singleOrNull {
  var iterator = this.iterator;
  if (iterator.moveNext()) {
    var result = iterator.current;
    if (!iterator.moveNext()) return result;
  }
  return null;
}