値がなく、キーだけのHashMapを想像してみてください。これはハッシュ集合(HashSet)と呼ばれるものです。()>のラッパーです。)「何の意味があるの?フツーにキーをVecに入れればいいじゃん」そう思いましたね?それは、HashSet独自の機能として、要素に重複がないということが保証されるためです。これは全ての集合(set)型がもつ機能です。HashSetはその実装の1つであり、他にはBTreeSet等があります。HashSetに、すでに存在する値を加えようとすると、(すなわち、加えようとしている値のハッシュ値と、要素中のいずれかの値のハッシュ値が等しい場合、)新しい値によって古い値が上書きされます。これは、同じ値を2つ以上欲しくない場合や、すでにある値を持っているか知りたい場合にとても有効です。集合型の機能はそれだけではありません。集合型には4つの主要なメソッドがあり、(すべてイテレータを返します。1つ目の集合にあり、かつ2つ目には存在しない値を全て取得。両方の集合にある値のみを取得。以下の例でこれらをすべて見ていきましょう。`HashSet::insert()`はfalseを返す。この行をコメントアウトしましょう。集合そのものも`Debug`を実装する。...]`のように要素をプリントする。}例は公式ドキュメントから持ってきています。