Dart中:List、SET、Maps的用法与方法。

为了写flutter,学了dart,记录一下。

一、List

var a = new List();
  1. 增加内容(其实addAll是用来拼接两个数组的)
a.add(2);
a.addAll([1,4,2,4,4])
  1. 获取长度
a.length()
  1. 数据翻转toList是为了把数据转化成数组,reversed之后的数据返回的是(1,2,4,4)这种样式的,而不是数组
var b = a.reversed.toList();
  1. 查找indexOf,返回的是索引值(从0开始算),找不到返回-1
a.indexOf(2);
  1. 删除具体值
a.remove(2);
  1. 删除传入的索引值对应的值
a.removeAt(4);
  1. 修改值(开始位置算,结束位置不算自己,修改的值)
a.fillRange(0,2,'s');//前两个值全部变成's'
  1. 插入一个值
a.insert(1,'aaa');//在这个索引值前面插入
a.insertAll(1,['a','b']);//在这个索引值前面插入
  1. list转成字符串,并且用’,'隔开
a.join(,);
  1. 字符串转成List
StringA.split('-');//用中间这个‘-’去切割这个字符串 

二、Set

 var s =  new Set();  
  1. 也是用add()去添加
  2. set是没有顺序的,并且不能重复,所以不能用索引去获取值
  3. 作用主要是数组去重
List a = ['a','b','c','a','a'];
var s = new Set();
s.addAll(a);
a = s.toList(); // a == ['a','b','c']

三、Maps

var Person={
	'A': 'aaa',
	'b'	:1
};

1.获取所有的key和值

Person.keys;//返回所有的key
Person.values;//返回所有的value

2.判断是否为空Person.isEmpty,判断是否不为空Person.isNotEmpty
3.删除一个值Person.remove('A');
4.查找一个值Person.containsValue('aaa');

四、方法

1、forEach()map()类似,遍历一个数组
2、where()和JS中的filter()类似,返回符合条件的值
3、any()是只要有一个值符合条件就返回true,否则就是false
4、 every()是所有的数据都要符合要求

发布了93 篇原创文章 · 获赞 25 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_40282732/article/details/103838367