有什么区别``HashSet <T> .IsSubsetOf()`和`HashSet <T> .IsProperSubsetOf()`

Flo*_*dis 17 .net c#

这两个方法调用有什么区别?

  • HashSet<T>.IsSubsetOf()
  • HashSet<T>.IsProperSubsetOf()

ahr*_*uss 17

看到这里

如果当前集合是其他集合的正确子集,则其他集合必须至少具有当前集合不具有的一个元素.

vs 这里

如果other包含与当前集相同的元素,则当前集仍被视为其他集的子集.

不同的是set.IsSubsetOf(set) == true,而set.IsProperSubsetOf(set) == false


Thr*_*eFx 5

这来自集合论:

S = {e,s,t}, T = {e,s,t}
Run Code Online (Sandbox Code Playgroud)

T是S的子集,因为T中的每一个元素也是S.但是它不是一个真子集,因为一个真子集,像一个正常的子集也包含超集的元素,但它也有以下比初始元素采集。例:

S = {e,s,t}, T = {e,t}
Run Code Online (Sandbox Code Playgroud)

T是S的适当子集。