Dart 程式設計中的集合
集合是物件的集合,其中每個物件只能出現一次。這意味著元素型別中的所有物件要麼在集合中,要麼不在集合中。
集合是一種重要的資料結構,在我們需要每個物件只出現一次的情況下非常有用。
Dart 中有多種建立集合的方式,但最常見的是使用 **Set()** 建構函式。
示例
請考慮以下示例:
void main() {
var fruits = new Set();
print(fruits);
}在上面的示例中,我們建立了一個名為 fruits 的集合,目前為空,然後我們列印了該集合。
輸出
{}需要注意的是,當我們使用預設方式建立集合時,我們建立的是一個 LinkedHashSet,如果使用 == 運算子比較兩個物件相等時,它們之間的區別是無法區分的。
我們可以使用 **add()** 方法將物件新增到 HashSet 中。
示例
請考慮以下示例:
void main() {
var fruits = new Set();
fruits.add("apple");
fruits.add("mango");
fruits.add("banana");
print(fruits);
}輸出
{apple, mango, banana}我們在上面的示例中添加了不同的水果,我們可以看到這些水果已成功新增到集合中。但是,如果我們嘗試插入一個已存在於集合中的物件會發生什麼情況呢?
示例
請考慮以下示例:
void main() {
var fruits = new Set();
fruits.add("apple");
fruits.add("mango");
fruits.add("banana");
var t = fruits.add("apple");
print(t);
print(fruits);
var z = fruits.add("litchi");
print(z);
print(fruits);
}如果物件已存在於集合中,我們仍然嘗試再次插入相同的物件,那麼什麼也不會發生,表示式將返回 false。
輸出
false
{apple, mango, banana}
true
{apple, mango, banana, litchi}還可以檢查集合是否包含我們正在查詢的特定物件。
示例
請考慮以下示例:
void main() {
var fruits = new Set();
fruits.add("apple");
fruits.add("mango");
fruits.add("banana");
print("has apple? ${fruits.contains("apple")}");
print("has kiwi? ${fruits.contains("kiwi")}");
}輸出
has apple? true has kiwi? false
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP