# TypeScript 集合

> 原文： [https://howtodoinjava.com/typescript/sets/](https://howtodoinjava.com/typescript/sets/)

`Set`是 ES6 中引入的新数据结构，类似于`Map`。 它允许您将不同的值存储到类似于其他编程语言的列表中 Java，C#。

## 创建集合

使用`Set`类型和`new`关键字在 TypeScript 中创建`Set`。

```java
let mySet = new Set();

```

## 从集合中添加/检索/删除值

1.  `set.add()` – 在`Set`中添加值的方法。
2.  `set.has()` – 检查`Set`中是否存在值。
3.  `set.delete()` – 从`Set`中删除一个值。
4.  `set.size` – 将返回`Set`的大小。

```java
let diceEntries = new Set();

//Add Values
diceEntries.add(1);
diceEntries.add(2);
diceEntries.add(3);
diceEntries.add(4).add(5).add(6);	//Chaining of add() method is allowed

//Check value is present or not
diceEntries.has(1);					//true
diceEntries.has(10);				//false

//Size of Set 
diceEntries.size; 					//6

//Delete a value from set
diceEntries.delete(6);				// true

//Clear whole Set
diceEntries.clear();				//Clear all entries

```

## 遍历集合

使用`'for...of'`循环迭代`Set`值。

```java
let diceEntries = new Set();

diceEntries.add(1).add(2).add(3).add(4).add(5).add(6);

//Iterate over set entries
for (let currentNumber of diceEntries) {

    console.log(currentNumber);  	//1 2 3 4 5 6

}

// Iterate set entries with forEach
diceEntries.forEach(function(value) {

  console.log(value);				//1 2 3 4 5 6

});

```

将我的问题放在评论部分。

学习愉快！