Flutter循序渐进==>数据结构(列表、映射和集合)和错误处理

导言

填鸭似的教育确实不行,我高中时学过集合,不知道有什么用,毫无兴趣,等到我学了一门编程语言后,才发现集合真的很有用;可以去重,可以看你有我没有的,可以看我有你没有的;列表是我最喜欢的数据结构,我最喜欢把列表和元组结合起来用,比如[(张飞,刘备集团),(贾诩,曹操集团)]。映射,也就是Python里面的字典,也是我的最爱之一!让学习变得有趣起来,就用三国混战来举例吧!

列表映射和集合出场

错误处理

//叫一个没来的将领,会发生什么?
try{String myGengeral = generalInfo['马超'];
}catch(e){print('出错:$e');
}

出错:type 'Null' is not a subtype of type 'String'

代码

void main(){print('***************************列表**********************************');List<String> generals = ['赵云','吕布','典韦','夏侯惇','赵云'];String liubeiGroup = generals[0];print('刘备集团将领有:$liubeiGroup');//典韦要保护曹操的,换曹仁出场generals[2] = '曹仁';print('曹操换人后,出场混战的将领有:$generals');//孙权说:“你们又不带我玩?我要派甘宁来参加!”generals.add('甘宁');print('孙权加人后,出场混战的将领有:$generals');//曹操说:“像吕布这种小人,不要让他入场,必须德才兼备才有资格入场!”generals.remove('吕布');print('移除人品差的后,出场混战的将领有:$generals');//组委会主席汉献帝说:“让我统计下参赛选手数量,听我念名单依次入场!”print('汉献帝宣布:总决赛出场混战的将领总共有:${generals.length}位!');for (String general in generals){print('请入场:$general!');}print('***************************映射**********************************');Map<String,dynamic> generalInfo = {'名字':'赵云','公司':'刘备集团','性别':'男',};print('性别有点多余');generalInfo.remove('性别');print(generalInfo);print('第一个出场的是${generalInfo['名字']}');//自我介绍了说了名字么?print('${generalInfo.containsKey('名字')}');List<String> keys = generalInfo.keys.toList();print(keys);List<dynamic> values = generalInfo.values.toList();print(values);generalInfo.forEach((key,value){print('$key:$value');});print('***************************集合**********************************');Set<String> newGenerals = {'刘备','张飞','关羽','关羽'};print(newGenerals);//上面那个列表里面,赵云报了两次名,这是不行的List<String> uniGenerals = generals.toSet().toList();print(uniGenerals);}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/38718.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

毫米波雷达深度学习技术-1.7训练一个神经网络

1.7 训练一个神经网络 对于训练神经网络&#xff0c;有两个步骤&#xff0c;即前向传递和误差反向传播。 1.7.1 前向传播和反向传播 在前向传递中&#xff0c;输入被馈送到模型并与权重向量相乘&#xff0c;并为每一层添加偏差以计算模型的输出。密集层或全连接层第l层的输入、…

网络基础-RIP协议

RIP&#xff08;Routing Information Protocol&#xff09;是一个基于距离矢量的动态路由协议&#xff0c;常用于小型到中型网络。RIP是较早的路由协议之一&#xff0c;具有简单易用的特点。以下是关于RIP协议的详细介绍&#xff1a; RIP的主要特点 ①使用跳数&#xff08;ho…

非标设备行业的数智化项目管理

近年来&#xff0c;中国制造快速发展&#xff0c;企业迫切需要加快转型升级。与传统制造业相比&#xff0c;高端制造业具有明显的优势&#xff1a;高技术、高附加值、低污染、低排放、竞争优势强。一方面&#xff0c;企业对于生产效率和自动化水平的要求不断提高&#xff0c;期…

武汉星起航:成功挂牌上股交,领航亚马逊跨境电商,共创未来辉煌

在全球电商的竞争格局中&#xff0c;亚马逊凭借其卓越的服务、丰富的商品种类和高效的物流体系&#xff0c;始终稳坐全球电商市场的头把交椅。而在这股不可阻挡的电商浪潮中&#xff0c;武汉星起航电子商务有限公司凭借其前瞻性的战略布局和强大的运营能力&#xff0c;成功在20…

名企面试必问30题(十二)——简单介绍一下你的家庭情况

1.思路 对于面试官来说&#xff0c;他提出这个问题&#xff0c;只是为了深挖您的性格、稳定性、行事风格&#xff0c;包括未来定居规划、生育规划等基础信息&#xff0c;这是正常情况。您不要过多围绕其他家庭成员来讲&#xff0c;否则面试官无法获取他想要的&#xff0c;您也难…

【单片机毕业设计选题24040】-基于STM32的蓝牙防丢器设计

系统功能: 系统上电后显示“欢迎使用蓝牙防丢系统请稍后”两秒钟显示正常界面&#xff0c;如果蓝牙正常连接OLED显示Connected, 蓝牙未连接则显示DisConnected同时蜂鸣器报警 蓝牙正常连接后在APP上每隔三秒显示一个Connected 系统功能框图: 主要功能模块原理图: 电源时钟…

大数据之Zookeeper部署

文章目录 集群规划环境准备集群部署参考资料 集群规划 确定使用Hadoop101、hadoop102和hadoop103三台服务器来构建Zookeeper集群。 hadoop101hadoop102hadoop103zookeeperzookeeperzookeeper 环境准备 安装zookeeper前需要确保下面的环境配置成功&#xff0c;具体可以参考大…

AI智能剪辑发展到哪种地步?来看看云微客就知道了!

不是短视频团队招不起&#xff0c;而是矩阵账号更有性价比。企业做短视频有反思过为什么干不过同行吗&#xff1f;我们来看看大佬是怎么做的。云微客AI智能剪辑系统用几百个账号做矩阵布局&#xff0c;系统每天自动进行批量剪视频、写文案、一键自动化发布视频&#xff0c;一个…

[漏洞复现] MetInfo5.0.4文件包含漏洞

[漏洞复现] MetInfo5.0.4文件包含漏洞 MetInfo5.0.4 漏洞代码审计 漏洞出现在about/index.php中&#xff0c;因为利用了动态地址&#xff0c;所以存在漏洞。 漏洞检查语句&#xff08;&#xff01;192.168.109.100是我的服务器ip&#xff0c;需要换成自己的&#xff09;&…

华为仓颉语言体验:一个简单的socket服务端实现

前言 由于仓颉目前是内测状态&#xff0c; 不能展示仓颉的详细信息&#xff0c;但是华为仓颉官网的公共文档的内容是可以公开的。 我相信有不少喜欢编程的朋友都申请了内测&#xff0c;但是一些编程初学者应该和我一样&#xff0c;处于摸索阶段。所以&#xff0c;我这里把我测…

中电金信:金Gien乐道 | 6月热门新闻盘点 回顾这一月的焦点事件

“以检之力 e企守护”——上海市检一分院与中电金信开展联学联建 6月24日&#xff0c;上海市人民检察院第一分院与中电金信数字科技集团股份有限公司联合开展“以检之力 e企守护”联学联建活动。双方共同参观了全国检察机关证券期货犯罪办案基地和重大职务犯罪案件办理&#xf…

python(6)numpy的使用详细讲解

在numpy中&#xff0c;最基本的数据结构是数组&#xff0c;因此我们首先需要了解如何创建一个数组。numpy提供了多种数组创建方法&#xff0c;包括从列表或元组创建、从文件中读取数据、使用特定函数创建等。下面是一些常用的创建方法&#xff1a; 一、创建数组 1. 从列表或元…

【MySQL备份】Percona XtraBackup基础篇

目录 1.关于Percona XtraBackup 2. Percona XtraBackup有哪些特点&#xff1f; 3.安装Percona XtraBackup 3.1.环境信息 3.2.安装步骤 4. xtrabackup内部流程图 5.Percona XtraBackup基础语法 5.1.全量备份 5.2.增量备份 5.2.1.基于全量备份的增量备份 5.2.2.基于前…

[leetcode]max-consecutive-ones 最大连续1的个数

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int findMaxConsecutiveOnes(vector<int>& nums) {int maxCount 0, count 0;int n nums.size();for (int i 0; i < n; i) {if (nums[i] 1) {count;maxCount max(maxCount, count);} else…

安装和微调大模型(基于LLaMA-Factory)

打开终端&#xff08;在Unix或macOS上&#xff09;或命令提示符/Anaconda Prompt&#xff08;在Windows上&#xff09;。 创建一个名为lora的虚拟环境并指定Python版本为3.9。 conda create --name lora python3.9激活新创建的虚拟环境。 conda activate lora克隆项目。 git …

详解COB显示屏的技术特点

COB&#xff08;Chip on Board&#xff09;显示屏作为一种采用倒装COB封装技术的LED显示屏&#xff0c;在显示效果以及使用稳定性跟防护性方面&#xff0c;拥有更大优势&#xff0c;今天跟随COB显示屏厂家中品瑞科技一起来看看&#xff0c;COB显示屏的技术特点&#xff1a; 1、…

如何在OpenEuler 上快速部署一套Zabbix7.0监控系统

如何在OpenEuler 上快速部署一套Zabbix监控系统 一、环境信息 用途机器IP操作系统备注zabbix-server172.22.33.180openeuler 22.03 LTS SP37.0 LTS 版本&#xff0c;容器部署zabbix-agent172.16.10.182openeuler 22.03 LTS SP37.0 源码编译部署 二、Docker 部署 2.1 二进制…

Anti-Canine Heartworm Antibody (Chicken) - HRP Conjugated

犬心丝虫&#xff08;学名Dirofilaria immitis&#xff09;是一种寄生丝虫&#xff0c;通过蚊子叮咬而传播。感染犬在早期阶段&#xff0c;大多不会出现症状。随着病情发展&#xff0c;将出现咳嗽、呼吸困难等症状&#xff0c;并伴有右心功能衰竭&#xff0c;最终全身衰弱或虚脱…

检索增强生成RAG系列3--RAG优化之文档处理

在上一章中罗列了对RAG准确度的几个重要关键点&#xff0c;主要包括2方面&#xff0c;这一章就针对其中一方面&#xff0c;来做详细的讲解以及其解决方案。 目录 1 文档解析1.1 文档解析工具1.2 实战经验1.3 代码演示 2 文档分块2.1 分块算法2.2 实战经验2.3 代码演示 3 文档e…

python自动化办公之shutil

目录 1复制文件&#xff0c;此时存在2份相同文件 2移动文件&#xff0c;此时仅有1份文件 3删除文件&#xff0c;此时0份文件 用到的库&#xff1a;shutil&#xff0c;os 实现的效果&#xff1a;复制文件&#xff0c;移动文件&#xff0c;删除文件 代码&#xff1a; 1复制…