ReadOnlyMemory<T>
和ReadOnlySpan<T>
提供了Equal(other)
方法,但没有CompareTo(other)
方法。我想知道是否有比循环并逐个比较每个元素更有效的实现IComparable<ReadOnlyMemory<T>>
的方法。在我的情况下,T
是char
或byte
。ReadOnlyMemory<T>
和ReadOnlySpan<T>
提供了Equal(other)
方法,但没有CompareTo(other)
方法。我想知道是否有比循环并逐个比较每个元素更有效的实现IComparable<ReadOnlyMemory<T>>
的方法。在我的情况下,T
是char
或byte
。似乎没有原生方法可以比较ReadOnlyMemory实例。但是,ReadOnlySpan有本地方法,可以通过使用ReadOnlyMemory的.Span属性访问:
ReadOnlyMemory<T> One = ...;
ReadOnlyMemory<T> Two = ...;
bool ContentsEqual = One.Span.SequenceEqual(Two.Span);
int Comparison = One.Span.SequenceCompareTo(Two.Span);
祝您愉快 :)