01 |
listOf() |
用于创建没有元素的空List |
val list:List<Int> = listOf()创建空数组时变量的类型不能省略 |
02 |
listOf(vararg elements: T) |
用于创建只有一个元素的List |
|
03 |
listOf(element: T) |
用于创建拥有多个元素的List |
|
04 |
arrayListOf() |
创建一个Java中的ArrayList对象实例 |
|
05 |
mutableListOf() |
创建一个MutableList的对象实例 |
|
06 |
list.toMutableList() |
转换成可变的List |
|
07 |
val iterator = list.iterator() |
创建迭代器 |
|
08 |
iterator.hasNext() |
检查序列中是否还有元素 |
|
09 |
iterator.next() |
使用next()获得序列中的下一个元素 |
|
10 |
list.forEach |
forEach遍历List元素 |
list.forEach(::println) |
11 |
mutableList.add(4) |
向集合中添加一个元素 |
|
12 |
mutableList.add(0,0) |
在下标为0的位置添加元素0 |
|
13 |
mutableList.remove(1) |
删除元素1 |
|
14 |
mutableList.removeAt(1) |
删除下标为1的元素 |
|
15 |
mutableList.removeAll(listOf(3,4)) |
删除子集合 |
|
16 |
mutableList.addAll(listOf(1,2,3)) |
添加子集合 |
|
17 |
mutableList.set(0,100) |
更新设置下标0的元素值为100 |
|
18 |
mutableList.clear() |
清空集合 |
|
19 |
mutableList.toList() |
把可变集合转为不可变集合 |
|
20 |
mlist1.retainAll(mlist2) |
取两个集合交集 |
|
21 |
list.contains(1) |
判断集合中是否有指定元素,有就返回true,否则返回false |
|
22 |
list.elementAt(6) |
查找下标对应的元素 |
如果下标越界会抛IndexOutOfBoundsException |
23 |
list.elementAtOrElse(7,{0}) |
查找下标对应元素 |
如果越界会根据方法返回默认值 |
24 |
list.elementAtOrNull(7) |
查找下标对应元素 |
如果越界就返回null |
25 |
list.first() |
返回集合第1个元素 |
如果是空集,抛出异常NoSuchElementException |
26 |
emptyList.firstOrNull() |
查找下标对应元素 |
如果是空集,返回null |
27 |
list.first({it%2==0}) |
返回符合条件的第一个元素 |
没有则抛异常NoSuchElementException |
28 |
list.firstOrNull({it>100}) |
返回符合条件的第一个元素 |
没有就返回null |
29 |
list.indexOf("c") |
返回指定下标的元素 |
没有就返回-1 |
30 |
list.indexOfFirst({it.contains("x")}) |
返回第一个符合条件的元素下标 |
没有就返回-1 |
31 |
list.indexOfLast({it.contains("x")}) |
返回最后一个符合条件的元素下标 |
没有就返回-1 |
32 |
list.last() |
返回集合最后一个元素 |
空集则抛出异常NoSuchElementException |
33 |
list.last({it==7}) |
返回符合条件的最后一个元素 |
没有就抛NoSuchElementException |
34 |
list.lastOrNull({it>10}) |
返回符合条件的最后一个元素 |
没有则返回null |
35 |
list.lastIndexOf("abc") |
返回符合条件的最后一个元素 |
没有就返回-1 |
36 |
list.single() |
该集合如果只有1个元素,则返回该元素。否则,抛异常。 |
|
37 |
list.single({it==1}) |
返回符合条件的单个元素 |
如有没有符合的抛异常NoSuchElementException,或超过一个的抛异常IllegalArgumentException。 |
38 |
list.singleOrNull({it==7}) |
返回符合条件的单个元素 |
如有没有符合或超过一个,返回null |
39 |
emptyList.any() |
如果该集合至少有一个元素,返回true,否则返回false。 |
|
40 |
list.any({it%2==0}) |
该集合中至少有一个元素匹配谓词函数参数 |
|
41 |
list.all({it%2==0}) |
当且仅当该集合中所有元素都满足条件时,返回true;否则都返回false。 |
|
42 |
list.none() |
如果该集合没有任何元素,返回true,否则返回false。 |
|
43 |
list.none({it%2==1}) |
当且仅当集合中所有元素都不满足条件时返回true,否则返回false。 |
|
44 |
list.count() |
计算集合中元素的个数 |
|
45 |
list.count({it%2==0}) |
计算集合中满足条件的元素的个数 |
|
46 |
list.reduce({sum, next->sum+next}) |
从第一项到最后一项进行累计运算 |
|
47 |
list.reduceRight({total, s -> s+total}) |
从最后一项到第一项进行累计运算 |
|
48 |
list.fold(100,{total, next -> next + total}) |
带初始值的reduce |
|
49 |
list.foldRight("xyz",{s, pre -> pre + s}) |
foldRight和reduceRight类似,有初始值。 |
|
50 |
list.forEach { value -> if (value > 7) println(value) } |
循环遍历元素,元素是it |
|
51 |
list.forEachIndexed { index, value -> if (value > 8) println("value of index $index is $value, greater than 8") } |
带index(下标) 的元素遍历 |
|
52 |
list.max() |
返回集合中最大的元素。 |
|
53 |
list.min() |
返回集合中的最小元素。 |
|
54 |
list.maxBy({it})、list.maxBy({it*(1-it)}) |
获取函数映射结果的最大值 |
|
55 |
list.minBy({it})、list.minBy({it*(1-it)}) |
获取函数映射后返回结果的最小值所对应那个元素的值,如果没有则返回null |
|
56 |
list.sumBy({it})、list.sumBy({it*it}) |
获取函数映射值的总和 |
|
网友评论