跳到主要内容

集合操作

List里添加数据

addToList(list,value)

举例:往新建的list里面添加数值5

输入:

// list: [1,2,3,4]
list = addToList(list,5)

结果:

"list": [1,2,3,4,5]

截取子List

subList(list,fromIndex,toIndex) 举例:取 list [ "a", "b","c", "d","e" ] 中下标从 1 到 4 的子 list

输入:

//list: ["a","b","c","d","e"]
subList = subList(list,1,4)"

结果:

 "subList": ["b","c","d"]

获取List元素

getListValue(list,index),index从0开始,取不到则返回空

举例:从list中按照下标获取其中的元素

输入:

//list: ["a","b","c"]
str = getListValue(list,2)

结果:

 "str": "c"

集合合并

mergeList(list1,list2),支持 List Set Map JSON Map或JSON如果子对象是Map,会进行数据合并,后面相同key会覆盖前面 举例:合并list和map

输入:

 // list1: [1,2,3],
// list2: [4,5,6]
mergeList = mergeList(list1,list2);

//"map1": { "a": 1, "b": 2,"c": 3},
//"map2": { "d": 4, "e": 5,"f": 6}
mergeMap = mergeList(map1,map2)

结果:

"mergeList": [1,2,3,4,5,6],
"mergeMap": {
"a": 1,
"b": 2,
"c": 3,
"d": 4,
"e": 5,
"f": 6
}

List<Map>排序

sortList(list,key,"desc/asc")

举例:把 listMap 按照key排序,sort可不传,默认为asc

输入:

 "listMap":[
{
"name": "a",
"num": 1
},
{
"name": "a",
"num": 3
},
{
"name": "a",
"num": 4
},
{
"name": "a",
"num": 2
},
{
"name": "a",
"num": 5
}
];

sortList = sortList(listMap,"num")

结果:

"sortList": [
{
"name": "a",
"num": 1
},
{
"name": "a",
"num": 2
},
{
"name": "a",
"num": 3
},
{
"name": "a",
"num": 4
},
{
"name": "a",
"num": 5
}
]

List<Map>分组

groupList(listMap,"key")

举例:将lismap按照性别分组

输入:

//"listMap": [
// {
// "name": "张三男1",
// "sex": "男"
// },
// {
// "name": "张三男2",
// "sex": "男"
// },
// {
// "name": "张三女1",
// "sex": "女"
// },
// {
// "name": "张三女2",
// "sex": "女"
// }
//]

afterGroup = groupList(listMap,"sex")

结果:

 "afterGroup": {
"女": [
{
"name": "张三女1",
"sex": "女"
},
{
"name": "张三女2",
"sex": "女"
}
],
"男": [
{
"name": "张三男1",
"sex": "男"
},
{
"name": "张三男2",
"sex": "男"
}
]
}

Map里删除数据

removeFromMap(map,"key"),此函数为void函数,无返回值

举例:删除map里 c 下面的值 a

输入:

//"map": {
// "a" : 1,
// "c" : {
// "a" : 1
// }
//}

removeFromMap(map,"c.a")

结果:

 "map": {
"a":1,
"c": {}
}

List<Map>合并

mergeListByKeys(majorListMap,listMap,"key1,key2..."),listMap 被合并进 majorListMap,listMap 中存在,majorListMap 不存在,以 majorListMap 为主

举例:按照 id 将两个 listMap 合并

输入:

//"listMap1": [
// {
// "a": 1,
// "id": 1
// },
// {
// "a": 2,
// "id": 3
// }
// ],
// "listMap2": [
// {
// "b": 1,
// "id": 1
// },
// {
// "b": 2,
// "id": 2
// }
// ]

listMap = mergeListByKeys(listMap1,listMap2,"id")

结果:

 "listMap": [
{
"a": 1,
"id": 1,
"b": 1
},
{
"a": 2,
"id": 3
}
]

List<Object>转成List<Map>

listToListMap(list,"key"),list是List<String> 执行函数后转成 List<Map<String,Object>>

举例:将list格式的内容转为listMap格式

输入:

//"list": [1,2,3]
listMap = listToListMap(list,"a")

结果:

"listMap": [
{
"a": 1
},
{
"a": 2
},
{
"a": 3
}
]

List<Map>转成List<Object>

listMapToList(list,"key")

举例:将List<Map>的指定key转化为list

输入:

// "list": [
// {
// "a": 1
// },
// {
// "a": 1
// },
// {
// "a": 1
// }
// ]
//}

list = listMapToList(list,"a")

结果:

  "list": [
1,
1,
1
]

获取Map值

getMapValue(map,"key"/key)

输入:

//map: [{"a":1},{"b":2},{"c":3}]
value = getMapValue(map,"a")

结果:

 "value": 1

获取Map所有的key

getMapKeys(map)

输入:

//map: [{"a":1},{"b":2},{"c":3}]
keysList = getMapKeys(map)

结果:

 "keysList":["a","b","c"]

Map转成List<Map>

mapToListMap(map,[keyName],[valuename])

输入:

//map: [{"a":1},{"b":2},{"c":3}]
listMap1 = mapToListMap(map)
listMap2 = mapToListMap(map,"name","value")

结果:

 "listMap1":[
{
"key":"a",
"value":1
},
{
"key":"b",
"value":2
},
{
"key":"c",
"value":3
}
],

"listMap1":[
{
"name":"a",
"value":1
},
{
"name":"b",
"value":2
},
{
"name":"c",
"value":3
}
]

List过滤

list = [1,2,3,4,5,6];
//多条件过滤
listFil = _fun.listFilter(list,"_this>1 && _this<4");
//单个条件过滤
listFil = _fun.listFilter(list,"_this>1");