Dart - Sets(集合)

Dart - Sets(集合) 首页 / Dart入门教程 / Dart - Sets(集合)

Dart Set是相同类型的不同值的无序集合。 Set不允许存储重复值。该集合必须包含唯一值。

初始化集合

Dart提供了两种方法来声明/初始化一个空集。可以使用类型参数后面的{}大括号来声明集合,也可以使用大括号{}声明变量类型Set.

var setName = <type>{};
Or 
Set<type> setname = {}; 

setName指的是集变量的名称,并且类型是指集合的数据类型。

让我们来看看Set声明的以下示例 -

void main(){
   print("Initializing the Set");
   var names = <String>{"Learnfk","Ricky", "Devansh","Adam"};
   print(names);
}

输出:

Initializing the Set
{Learnfk, Ricky, Devansh, Adam}

添加元素

达特提供了两个方法 add() addAll()将元素插入给定集合。 add()方法用于将单个项目添加到给定集中。它可以在 addAll()方法将多个元素添加到现有集中时添加一个。

Set_name.add(<value>);
Or 
Set_name.addAll(val1,val2....valN)

考虑以下示例 -

void main(){
   print("Insert element into the Set");
   var names = {"Learnfk","Ricky","Devansh","Adam"}; 
  //Declaring empty set
   var emp = <String>{};
   emp.add("Jonathan");
   print(emp);
   
  //Adding multiple elements
   emp.addAll(names);
   print(emp);
}

输出:

Insert element into the Set
{Jonathan}
{Jonathan, Learnfk, Ricky, Devansh, Adam}

访问元素

Dart提供elementAt()方法,该方法用于通过传递其指定的索引位置来访问该项目。集合索引从0开始,一直到size-1,其中size是集合中存在的元素的编号。如果输入的索引号大于其大小,将引发错误。语法在下面给出。

Set_name.elementAt(index)

考虑以下示例。

void main(){
   print("Access element from the Set");
   var names = {"Learnfk","Ricky","Devansh","Adam"};
   print(names);
   
   var x = names.elementAt(3);
   print(x);
}

输出:

Access element from the Set
{Learnfk, Ricky, Devansh, Adam}
Adam

查询元素

Dart提供 contains()方法,用于在集合中找到一个元素。它接受单个项目作为参数AD返回Boolean类型的结果。如果集合中存在的给定元素,则返回真为false。

set_name.contains(value);

示例 -

void main()  {

  print("Example - Find Element in the given Set");
  var names = <String>{"Peter","John","Ricky","Devansh","Finch"};

  if(names.contains("Ricky")){
     print("Element Found");
  }

  else {
    print("Element not found");
 }
}

输出:

Example - Find Element in the given Set
Element Found

删除元素

remove()方法用于消除或从给定集中删除元素。

set_names.contains(value)

示例 -

void main()  {

    print("Example - Remove Element in the given Set");
    var names = <String>{"Learnfk", "John", "Ricky", "Devansh", "Finch"};
    print("Before remove : ${names}");

     names.remove("Learnfk");
     print("After remove  :  ${names}");
}

输出:

Example - Remove Element in the given Set
Before remove : {Learnfk, John, Ricky, Devansh, Finch}
After remove  :  {John, Ricky, Devansh, Finch}

迭代元素

在Dart中,可以使用如下所示的 foreach 方法迭代集合元素 -

void main()  {
    print("Example - Remove Element in the given Set");
    var names = <String>{"Peter","John","Ricky","Devansh","Finch"};

    names.forEach((value) {
        print('Value:  $value');
     });
}

输出:

Example - Remove Element in the given Set
Value:  Peter
Value:  John
Value:  Ricky
Value:  Devansh
Value:  Finch

删除所有元素

我们可以使用 clear()方法来删除整个集合元素。它删除或删除给定集中的所有元素,并返回空集。语法如下 -

set_name.clear();

示例 -

void main()  {
    print("Example - Remove All Element to the given Set");
    var names = <String>{"Peter","John","Ricky","Devansh","Finch"};
    
    names.clear();
    print(names);

}

输出:

Example - Remove All Element to the given Set
{Peter, John, Ricky, Devansh, Finch}
{}

转为列表

SET对象可以使用 tolist()方法转换为列表对象。语法如下

List<type> <list_name> = <set_name>. toList();

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

苏杰的产品创新课 -〔苏杰〕

后端存储实战课 -〔李玥〕

零基础实战机器学习 -〔黄佳〕

搞定音频技术 -〔冯建元 〕

Web漏洞挖掘实战 -〔王昊天〕

技术领导力实战笔记 2022 -〔TGO 鲲鹏会〕

B端体验设计入门课 -〔林远宏(汤圆)〕

结构沟通力 -〔李忠秋〕

互联网人的数字化企业生存指南 -〔沈欣〕

好记忆不如烂笔头。留下您的足迹吧 :)