//创建set
val set = hashSetOf<Int>(1, 3, 5, 7, 9)
Log.i("zhoujian", "set.max=" + set.max());
//创建list
val list = arrayListOf<Int>(1, 3, 5, 7, 9)
Log.i("zhoujian", "list.last=" + list.last());
//创建map
val map = hashMapOf<Int, String>(1 to "one", 2 to "two", 3 to "three")
Log.i("zhoujian", "set=" + set.javaClass);
Log.i("zhoujian", "list=" + list.javaClass);
Log.i("zhoujian", "map=" + map.javaClass);
2019-05-18 16:10:16.006 24614-24614/? I/zhoujian: set.max=9
2019-05-18 16:10:16.006 24614-24614/? I/zhoujian: list.last=9
2019-05-18 16:10:16.006 24614-24614/? I/zhoujian: set=class java.util.HashSet
2019-05-18 16:10:16.006 24614-24614/? I/zhoujian: list=class java.util.ArrayList
2019-05-18 16:10:16.006 24614-24614/? I/zhoujian: map=class java.util.HashMap
可以看出Kotlin中采用的是标准的Java集合类
让函数更好调用
fun <T> joinToString(collection: Collection<T>, separator: String, prefix: String, postfix: String): String {
val resault = StringBuffer(prefix)
for ((index, element) in collection.withIndex()) {
if (index > 0) resault.append(separator)
resault.append(element)
}
resault.append(postfix)
return resault.toString()
}
val list = listOf(1, 2, 3)
Log.i("zhoujian", "list=" + joinToString(list, ";", "(", ")"));
05-20 14:57:17.388 32259-32259/com.zhoujian.kotlindemo I/zhoujian: list=(1;2;3)
命名参数
Log.i("zhoujian", "list=" + joinToString(collection = list, separator = ";", prefix = "(", postfix = ")"));
默认参数值
fun <T> joinToString(collection: Collection<T>, separator: String = ",", prefix: String = "", postfix: String = ""): String {
val resault = StringBuffer(prefix)
for ((index, element) in collection.withIndex()) {
if (index > 0) resault.append(separator)
resault.append(element)
}
resault.append(postfix)
return resault.toString()
}
val list = listOf(1, 2, 3)
Log.i("zhoujian", "list=" + joinToString(list, ";", "(", ")"));
Log.i("zhoujian", "list=" + joinToString(list, ";", "[", "]"));
Log.i("zhoujian", "list=" + joinToString(list, ";"));
打印结果:
05-20 15:31:04.462 6163-6163/com.zhoujian.kotlindemo I/zhoujian: list=(1;2;3)
05-20 15:31:04.462 6163-6163/com.zhoujian.kotlindemo I/zhoujian: list=[1;2;3]
05-20 15:31:04.462 6163-6163/com.zhoujian.kotlindemo I/zhoujian: list=1;2;3