如果 2 IEnumerable<T> 包含相同的项目,该项目是否在内存中重复?

If 2 IEnumerable<T> contains the same item, is the item duplicated on memory?

我需要从 IListSource 获取 Items 并将它们添加到 ObservableCollection,这会重复内存量还是仅由 2 IEnumerable 引用该项目?

public ObservableCollection<T> ObservableData { 
  get => _ObservableData; 
  set => _ObservableData = value; 
}

public void MoveToPage(int PageNumber) {
  this.CurrentPage = PageNumber;
  IEnumerable<T> InvokeData = ((IListSource)this).GetList().Cast<T>();

  foreach (var item in InvokeData) {
    this.ObservableData.Add(item);
  }
}

一句话-没有

您有两个对同一对象的引用。显然,引用本身占用内存,但您不会将对象所需的内存加倍。