Dart5(五)List Set Map详解 以及循环语句for
2020-06-29 本文已影响0人
Kernel521
一、List
List myList = [ 1, 2, 3 ];
1. 常用属性
length: myList.length
reversed: myList.reversed 翻转后(1, 2, 3)
toList: myList.reversed.toList() 变数组
isEmpty: 返回是否为空 如果空数组,返回true,否则false
isNotEmpty: 返回不为空 如果不为空,返回true,否则false
2. 常用方法
add: 只能 增加一个 myList.add(4)
addAll: 只能 拼接数组 myList.addAll( [ 5, 6 ] )
indexOf: 查找 有返回下标,没有返回-1 myList.indexOf(4)
remove: 删除 传入具体值
removeAt: 删除 传入索引值
fillRange: 修改 myList.fillRange(1, 2, "aa") . [1, aa, 3]
insert(index, value): 指定位置插入值
insertAll (index, list): 指定位置插入list
toList(): 其他类型转换为List
join(): List转换为字符串
split: 字符串转为List
forEach: map中forEach 是value
map
where: 如同 js filter
any: 如同 js some
every: 如同 js every
二、Map
var obj = {
"name" : "张三",
"age": 12
}
1. 常用属性
keys: obj.keys 获取所有key
values: obj.values 获取所有values
isEmpty: 返回是否为空 如果空数组,返回true,否则false
isNotEmpty: 返回不为空 如果不为空,返回true,否则false
2. 常用方法
addAll: 只能 拼接数组 myList.addAll( {} )
remove: 删除 obj.remove( keys )
containsValues: 是否包含某个value obj.containsValues( values )
forEach: map中forEach 是key,value
map:
where: 如同 js filter
any: 如同 js some
every: 如同 js every
三、Set
new Set() 去重 , 是没有顺序且不能重复的集合,所以不能通过索引去获取值
List myList = [ 1, 2, 3 ];
var s = new Set();
s.addAll( myList ).toList(); 去重后的数据