当前位置: 首页 > news >正文

第三百六十六回

文章目录

  • 1. 概念介绍
  • 2. 使用方法
    • 2.1 List
    • 2.2 Map
    • 2.3 Set
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了"convert包"相关的内容,本章回中将介绍collection.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中介绍的内容是collection,如果有Java开发经验的看官,估计会想起来,Java中也有同名的类,它要主提供List,Set,Map这些常用的数据结构。不
过我们在这里介绍的是dart中的collection,它们虽然功使用了不同的编程语言,但是都提供了List,Set,Map这些常用的数据结构,本章回中将介绍它们的使用方法。

2. 使用方法

collection中主要包含List,Set,Map这样常用的数据结构,接下来我们分别介绍这些数据结构。

2.1 List

List也叫列表,主要用来存放具有相同类型的成员,成员的存放顺序与添加成员时的顺序相同。它提供了添加,插入,修改和删除成员的方法。这样可以方便地操作列表
中的成员。此外,它还提供了一些操作符来操作列表,比如+用来合并两个列表,==用来判断两个列表是否相等。

2.2 Map

Map也叫哈希表,主要用来存放键值对类型的成员,成员的存放顺序不重要,主要通过成员的键来获取与该键对应的值。它提供了添加,修改和删除成员的方法。这样可以
方便地操作哈希表中的成员。此外,它还提供了一些操作符来操作哈希表,比如,==用来判断两个哈希表是否相等。

2.3 Set

Set也叫集合,主要用来存放具有不同类型的成员,成员没有固定的存放顺序,而且不能重复的成员。它提供了添加,修改,查询和删除成员的方法。这样可以方便地操作
集合中的成员。此外,它还提供了一些操作符来操作集合,比如==用来判断两个集合是否相等。

3. 示例代码

final growableList = <String>['A', 'B']; // Creates growable list.
growableList[0] = 'G';
print(growableList); // [G, B]growableList.add('X');
growableList.addAll({'C', 'B'});
print(growableList); // [G, B, X, C, B]final indexA = growableList.indexOf('A'); // -1 (not in the list)
final firstIndexB = growableList.indexOf('B'); // 1
final lastIndexB = growableList.lastIndexOf('B'); // 4growableList.remove('C');
growableList.removeLast();
print(growableList); // [G, B, X]growableList.insert(1, 'New');
print(growableList); // [G, New, B, X]growableList.replaceRange(0, 2, ['AB', 'A']);
print(growableList); // [AB, A, B, X]growableList.fillRange(2, 4, 'F');
print(growableList); // [AB, A, F, F]

我们在上面的示例代码中演示了列表的用法,其中包含列表中各个接口的用法,比如添加,修改,删除成员的接口。这些代码来自官方文档,建议大家自己动手去实践,此
外,我们没有提供Map和Set的示例代码,大家可以参考文官文档来实践。

4. 内容总结

本章回中我们主要介绍了dart中的connection,如果大家有Java编程经验,就会发现它和Java中的colleciton十分相似。此外,dart中还有一个叫collection的
包,大家不要与此包混淆。本章回中介绍的collection在dart::core中,而且colloect是一个独立的包,包中在List,Map,Set这些数据结构的基础上提供了专门
的类,我们可以通过类中的相关方法来使用这些数据结构。包中还提供了一个判断这些数据结构相等的接口:Equality.通过实现接口中的方法来判断数据结构是否相等。
最后,我们对本章回的内容做一个全面的总结:

  • ListList也叫列表,主要用来存放具有相同类型的数据;
  • Map也叫哈希表,主要用来存放键值对类型的数据;
  • Set也叫集合,主要用来存放具有不同类型的数据,不能存放相同的数据;
  • List,Map,Set都提供添加,查找,删除成员的方法;
    看官们,与"collection"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 剪辑视频衔接怎么操作 剪辑视频衔接过渡自然方法 剪辑视频教程新手入门 抖音剪辑短视频 会声会影视频制作教程
  • MySQL数据库操作
  • 爬虫知识--02
  • HTTP缓存技术
  • 服务器4c16g中的c指什么?或者4h什么意思?
  • Mysql如何优化数据查询方案
  • 单片机学习笔记---LED呼吸灯直流电机调速
  • 【Jvm】性能调优(下)线上问题排查思路汇总
  • 202428读书笔记|《风吹哪页读哪页》——答案在路上,自由在风里,身处井隅,心向璀璨
  • 【Spring连载】使用Spring Data访问 MongoDB(一)----快速指南
  • 2024-02-19(Flume,DataX)
  • MySQL--SQL解析顺序
  • Linux——信号(2)
  • MSS与cwnd的关系,rwnd又是什么?
  • http前生今世
  • 30秒的PHP代码片段(1)数组 - Array
  • css的样式优先级
  • go语言学习初探(一)
  • k8s 面向应用开发者的基础命令
  • Mithril.js 入门介绍
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • Vim 折腾记
  • 电商搜索引擎的架构设计和性能优化
  • 简单易用的leetcode开发测试工具(npm)
  • 将回调地狱按在地上摩擦的Promise
  • 前嗅ForeSpider教程:创建模板
  • 区块链分支循环
  • 阿里云ACE认证之理解CDN技术
  • ​flutter 代码混淆
  • (175)FPGA门控时钟技术
  • (9)目标检测_SSD的原理
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (Java入门)抽象类,接口,内部类
  • (超详细)语音信号处理之特征提取
  • (十六)一篇文章学会Java的常用API
  • (五)c52学习之旅-静态数码管
  • (一)appium-desktop定位元素原理
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .NET技术成长路线架构图
  • .so文件(linux系统)
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • [ Algorithm ] N次方算法 N Square 动态规划解决
  • [2015][note]基于薄向列液晶层的可调谐THz fishnet超材料快速开关——
  • [3D游戏开发实践] Cocos Cyberpunk 源码解读-高中低端机性能适配策略
  • [ABC294Ex] K-Coloring
  • [Angular] 笔记 20:NgContent
  • [C++]AVL树怎么转
  • [ComfyUI]Flux+MiniCPM-V强强联手艺术创意,媲美GPT4V级国产多模态视觉大模型
  • [CSS] 点击事件触发的动画
  • [C语言]——内存函数
  • [GDMEC-无人机遥感研究小组]无人机遥感小组-000-数据集制备