Dart集合
Posted loaderman
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dart集合相关的知识,希望对你有一定的参考价值。
/* List里面常用的属性和方法: 常用属性: length 长度 reversed 翻转 isEmpty 是否为空 isNotEmpty 是否不为空 常用方法: add 增加 addAll 拼接数组 indexOf 查找 传入具体值 remove 删除 传入具体值 removeAt 删除 传入索引值 fillRange 修改 insert(index,value); 指定位置插入 insertAll(index,list) 指定位置插入List toList() 其他类型转换成List join() List转换成字符串 split() 字符串转化成List forEach map where any every */ void main() // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; // print(myList[1]); // var list=new List(); // list.add(‘111‘); // list.add(‘222‘); // print(list); //List里面的属性: // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; // print(myList.length); // print(myList.isEmpty); // print(myList.isNotEmpty); // print(myList.reversed); //对列表倒序排序 // var newMyList=myList.reversed.toList(); // print(newMyList); //List里面的方法: // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; //myList.add(‘桃子‘); //增加数据 增加一个 // myList.addAll([‘桃子‘,‘葡萄‘]); //拼接数组 // print(myList); //print(myList.indexOf(‘苹x果‘)); //indexOf查找数据 查找不到返回-1 查找到返回索引值 // myList.remove(‘西瓜‘); // myList.removeAt(1); // print(myList); // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; // myList.fillRange(1, 2,‘aaa‘); //修改 // myList.fillRange(1, 3,‘aaa‘); // myList.insert(1,‘aaa‘); //插入 一个 // myList.insertAll(1, [‘aaa‘,‘bbb‘]); //插入 多个 // print(myList); // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; // var str=myList.join(‘-‘); //list转换成字符串 // print(str); // print(str is String); //true var str=‘香蕉-苹果-西瓜‘; var list=str.split(‘-‘); print(list); print(list is List);
//Set //用它最主要的功能就是去除数组重复内容 //Set是没有顺序且不能重复的集合,所以不能通过索引去获取值 void main() // var s=new Set(); // s.add(‘香蕉‘); // s.add(‘苹果‘); // s.add(‘苹果‘); // print(s); //香蕉, 苹果 // print(s.toList()); List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘,‘香蕉‘,‘苹果‘,‘香蕉‘,‘苹果‘]; var s=new Set(); s.addAll(myList); print(s); print(s.toList());
/* 映射(Maps)是无序的键值对: 常用属性: keys 获取所有的key值 values 获取所有的value值 isEmpty 是否为空 isNotEmpty 是否不为空 常用方法: remove(key) 删除指定key的数据 addAll(...) 合并映射 给映射内增加属性 containsValue 查看映射内的值 返回true/false forEach map where any every */ void main() // Map person= // "name":"张三", // "age":20 // ; // var m=new Map(); // m["name"]="李四"; // print(person); // print(m); //常用属性: // Map person= // "name":"张三", // "age":20, // "sex":"男" // ; // print(person.keys.toList()); // print(person.values.toList()); // print(person.isEmpty); // print(person.isNotEmpty); //常用方法: Map person= "name":"张三", "age":20, "sex":"男" ; // person.addAll( // "work":[‘敲代码‘,‘送外卖‘], // "height":160 // ); // print(person); // person.remove("sex"); // print(person); print(person.containsValue(‘张三‘));
/* forEach map where any every */ void main() // List myList=[‘香蕉‘,‘苹果‘,‘西瓜‘]; // for(var i=0;i<myList.length;i++) // print(myList[i]); // // for(var item in myList) // print(item); // // myList.forEach((value) // print("$value"); // ); // List myList=[1,3,4]; // List newList=new List(); // for(var i=0;i<myList.length;i++) // newList.add(myList[i]*2); // // print(newList); // List myList=[1,3,4]; // var newList=myList.map((value) // return value*2; // ); // print(newList.toList()); // List myList=[1,3,4,5,7,8,9]; // var newList=myList.where((value) // return value>5; // ); // print(newList.toList()); // List myList=[1,3,4,5,7,8,9]; // var f=myList.any((value) //只要集合里面有满足条件的就返回true // return value>5; // ); // print(f); // List myList=[1,3,4,5,7,8,9]; // var f=myList.every((value) //每一个都满足条件返回true 否则返回false // return value>5; // ); // print(f); // set // var s=new Set(); // s.addAll([1,222,333]); // s.forEach((value)=>print(value)); //map Map person= "name":"张三", "age":20 ; person.forEach((key,value) print("$key---$value"); );
以上是关于Dart集合的主要内容,如果未能解决你的问题,请参考以下文章