Dart 集合:List、Set、Map

  • 发表于
  • flutter

Dart提供了3种核心的集合类型 List(列表)、Set(集合)和Map(映射)。

一. List

编程中最常使用的集合是数组。Dart以列表(List)对象的形式表示数组。列表(List)只是一组有序的对象。

1. List种类

  • 固定长度列表
  • 可增长列表

A. 固定长度列表

固定长度列表的长度不能在运行时更改。
1).声明列表

上面的语法创建了指定大小的列表。列表不能在运行时增长或缩小。任何调整列表大小的尝试都将导致异常。
2). 初始化列表

3). 例子

B. 可增长列表

可增长列表的长度可以在运行时更改。
1).声明列表

2).初始化列表

3).例子

2. List里面常用的属性和方法:

二. Set

Set是没有顺序且不能重复的集合,所以不能通过索引去获取值,用它最主要的功能就是去除数组重复内容,List 去重可以先转 Set 再转 List 即可。

三. Map

Dart映射(Map对象)是一个简单的键/值对。映射中的键和值可以是任何类型。映射是动态集合。就是说,Map可以在运行时增长和缩小。
注 - 映射值可以是包括NULL的任何对象。

1. Map的两种方式声明

  • 使用映射文字
  • 使用Map构造函数

A. 使用映射文字

1). 要使用映射文字声明映射,需要将键值对括在一对花括号{}中。

2). 例子

B. 使用Map构造器声明映射

1). 声明映射

2). 然后初始化映射

3). 例子1:在运行时向映射文字添加值

例子2:Map构造函数

2. Maps里面常用的属性和方法:

四. 通用方法

List、Set和Map有一些通用的方法。其中的一些通用方法都是来自于类Iterable。List和Set是iterable类的实现。
虽然Map没有实现Iterable, 但是Map的属性keys和values都是Iterable对象。