erg/doc/zh_TW/syntax/14_set.md
2022-09-06 20:13:44 +08:00

1.4 KiB
Raw Blame History

Set

badge

一個Set代表一個集合它在結構上是一個重復的無序數組。

assert Set.from([1, 2, 3, 2, 1]) == {1, 2, 3}
assert {1, 2} == {1, 1, 2} # 重復的被自動刪除
assert {1, 2} == {2, 1}

Set可以執行集合操作。

assert 1 in {1, 2, 3}
assert not 1 in {}
assert {1} or {2} == {1, 2}
assert {1, 2} and {2, 3} == {2}
assert {1, 2} not {2} == {1}

Set是同質集合。 為了使不同類的對象共存,它們必須同質化

s: {Int or Str} = {"a", 1, "b", -1}

Sets為類型

Sets也可以被視為類型。 這種類型稱為 枚舉類型

i: {1, 2, 3} = 1
assert i in {1, 2, 3}

Set的元素直接是類型的元素。 請注意這些Set本身是不同的。

mut_set = {1, 2, 3}.into {Int; !3}
mut_set.insert!(4)

上一頁 | 下一頁