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

Flutter Dart 集合类型List Set Map详解军 以及循环语句 forEaclh map where any every

List基础用法

  var list1 = ["西瓜", "苹果", "香蕉", true, 0];var list2 = <String>["西瓜", "苹果", "香蕉"];List list3 = ["西瓜", "苹果", "香蕉"];list3.add("草莓");print(list3);print(list3.length);//创建一个固定长度的Listvar list4 = List.filled(2, "");list4[0] = "葡萄";print(list4);print(list4.length);var list5 = list4.reversed.toList();list5.add("桃子");list5.addAll(["桃子", "提子"]); //拼接数组//List里面的属性:print(list4.isEmpty);print(list4.isNotEmpty);print(list4.reversed);print(list5);print(list5.indexOf("桃子")); //indexOf查找数据,查找不到返回-1,查找到返回索引list5.remove("提子"); //根据Value删除list5.removeAt(3); //根据索引删除print(list5);List list6 = ["西瓜", "苹果", "香蕉"];list6.fillRange(0, 1, "aaa"); //根据索引修改print("list6 = $list6"); //list6 = [aaa, 苹果, 香蕉]list6.fillRange(1, 3, "aaa"); //根据索引修改print("list6 = $list6"); //list6 = [aaa, aaa, aaa]List list7 = ["西瓜", "苹果", "香蕉"];list7.insert(1, "火龙果"); //插入一个list7.insertAll(1, ["猕猴桃", "芒果"]); //插入多个print("list7 = $list7"); //list7 = [西瓜, 猕猴桃, 芒果, 火龙果, 苹果, 香蕉]List list8 = ["西瓜", "苹果", "香蕉"];var join = list8.join("-"); //list转换成字符串print("join = $join"); //join = 西瓜-苹果-香蕉var str = "西瓜-苹果-香蕉";var split = str.split("-"); //字符串转换成listprint("split = $split"); //split = [西瓜, 苹果, 香蕉]

Set基础用法

 /*Set用它最主要的功能就是去除数组重复内容set是没有顺序且不能重复的集合,所以不能通过索引取获取值*/var set = Set();set.add("苹果");set.add("西瓜");set.add("西瓜");print("set = $set"); //set = {苹果, 西瓜}print(set.toList()); //[苹果, 西瓜]//list去重List list9 = ["西瓜", "西瓜", "猕猴桃", "芒果", "猕猴桃", "芒果"];var set1 = Set();set1.addAll(list9);print("set1 = $set1"); //set1 = {西瓜, 猕猴桃, 芒果}var newList = set1.toList();print("newList = $newList"); //newList = [西瓜, 猕猴桃, 芒果]

map常用属性

  var map = {"name": "张三", "age": 20, "sex": "男"};print("map = $map"); //map = {name: 张三, age: 20}var map1 = Map();map1["name"] = "李四";print("map1 = $map1"); //map1 = {name: 李四}print(map.keys.toList()); //[name, age, sex]print(map.values.toList()); //[张三, 20, 男]print(map.isEmpty); //是否为空       falseprint(map.isNotEmpty); //是否不为空   truemap.addAll({"work": ["厨师", "司机"],"height": 20,});print(map); //{name: 张三, age: 20, sex: 男, work: [厨师, 司机], height: 20}map.remove("sex");print(map); //{name: 张三, age: 20, work: [厨师, 司机], height: 20}print(map.containsKey("work")); //trueprint(map.containsValue("张三")); //true

List遍历

  List list10 = ["西瓜", "苹果", "香蕉"];for (int i = 0; i < list10.length; i++) {print(list10[i]);}//list10.forEach((value) {print(value);});List list11 = [1, 3, 4];var newList11 = list11.map((value) {return value * 2;});print(newList11); //(2, 6, 8)print(newList11.toList()); //[2, 6, 8]//筛选满足条件的数据var newList12 = list11.where((value) {return value > 2;});print(newList12); //(3, 4)//只要集合里面有满足条件的就返回truevar isHas = list11.any((value) {return value > 2;});print(isHas); //true//每一个都要满足条件的就返回true,否则返回falsevar isHasValue = list11.every((value) {return value > 2;});print(isHasValue); //false

Set遍历

 var set3 = Set();set3.addAll(["111", "222", "333"]);set3.forEach((value) => print(value));set3.forEach((value) {print(value);});//mapMap map6 = {"name": "张三", "age": 20};map6.forEach((key,value){print("$key = $value"); //name = 张三   age = 20});print(map6.containsValue( "张三"));

http://www.xdnf.cn/news/2136.html

相关文章:

  • 【动手学大模型开发】VSCode 连接远程服务器
  • 苹果iosApp提交审核常见问题--内购订阅篇
  • 技术视界 | 从自然中获取智慧: 仿生机器人如何学会“像动物一样思考和行动”
  • 《算法笔记》4.2小节——算法初步->哈希
  • 【Redis】hash类型
  • 每日c/c++题 备战蓝桥杯(P1252洛谷 马拉松接力赛)
  • 《深入理解 AOP》
  • 数图信息科技邀您共赴第二十五届中国零售业博览会
  • spring中的@bean注解详解
  • Springoot、Flowable快速学习
  • 制作一款打飞机游戏25:添加数据
  • C++与Python编写二进制转十进制
  • 一种双模式机器人辅助股骨干骨折钢板植入方法
  • 【AI平台】n8n入门3:第二个工作流,链接网上大模型(含三种方式)
  • wireshark从HEX转储导入使用方法
  • 数学基础 -- 欧拉恒等式的魅力:让复数旋转起来!
  • MATLAB基础应用精讲-【基础知识篇】发布和共享 MATLAB 代码
  • 网络流量分析 | 流量分析基础
  • 机器学习基础 - 回归模型之线性回归
  • SD2351核心板:重构AI视觉产业价值链的“超级节点”
  • 【高频考点精讲】JavaScript事件循环机制:从宏任务微任务到渲染时机
  • MySQL数据库(13) 用户管理
  • Redis高效赋能机器学习实战:用FastAPI打造智能钓鱼邮件识别与缓存系统全流程解析
  • nacos设置权重进行负载均衡不生效
  • MongoDB 图片 URL 存储异常问题解决方案
  • C++入侵检测与网络攻防之网络嗅探以及ARP攻击
  • 【论文阅读】平滑量化:对大型语言模型进行准确高效的训练后量化
  • Linux文件管理(2)
  • 第十二届蓝桥杯 2021 C/C++组 直线
  • 深入理解网络原理:UDP协议详解