Kotlin
1 List
相对于java来说kotlin中的list:
1.listof不可以修改元素,只可以读元素
2.mustablelistof可以修改元素也可以加元素
3.kotlin可以用java中的list接口
比如arrayListOf,ArrayList
fun main(args: Array<String>) {
//listof
val list1:List<String> = listOf("1","2","3")
list1.forEach{
println(it)
}
//list不可以修改元素,只是可读
//mustablelistof
//返回的也是ArrayList
val list2 = mutableListOf("1","2","3")
list2.add("4")//添加
list2.set(0,"王五")//修改
list2.forEach{
println(it)
}
val list3 = arrayListOf("2","3","4")
list3.add("4")
list3.set(0,"11")
list3.forEach{
println(it)
}
val list4 = ArrayList<String>()
list4.add("1")
}
结果
1
2
3
王五
2
3
4
11
3
4
4
java中的list集合:
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
public class Demo01 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String >();
list.add("阿里里");
list.add("青鸟");
for(String name:list){
System.out.println(name);
}
HashSet<String> set = new HashSet<String>();
set.add("1");
set.add("2");
for(String name:set){
System.out.println(name);
}
HashMap<String,String> map = new HashMap<String, String>();
map.put("1","1.1");
map.put("2","2.2");
for(String name:map.values()){
System.out.println(name);
}
for(String name:map.keySet()){
System.out.println(name);
}
}
}
结果
阿里里
青鸟
1
2
1.1
2.2
1
2
2 set
kotlin中的setOf也不可以修改元素,只可以读元素
可以用mutableSetOf可以修改元素和添加元素
kotlin也可以用java中的set接口比如treeSet
import java.util.TreeSet
fun main(args: Array<String>) {
val set1 = setOf<String>("1","2","3")
set1.forEach{
println(it)
}
val set2 = mutableSetOf<String>()
set2.add("1")
set2.add("2")
set2.forEach{
println(it)
}
val t1 = TreeSet<String>()
t1.add("a")
t1.add("2")
t1.add("3")
t1.forEach{
println(it)
}
println(t1)
}
3 map
kotlin中的mapOf也是只可以读不可以加和改
mutablemapOf可以修改和添加
kotlin可以利用java的map的接口,比如hashtable
fun main(args: Array<String>) {
val map1 = mapOf<String,String>("1" to "2","2" to "3")
map1.values.forEach{
println(it)
}
val map2 = mutableMapOf<String,String>()
map2.put("1","2")
map2.put("2","3")
map2.keys.forEach{
println(it)
}
val hashtable = HashMap<String,String>()
hashtable.put("1","2")
hashtable.put("2","3")
for (value in hashtable.values) {
println(value)
}
}
结果
2
3
1
2
2
3
map的遍历:
val e1 = map2.entries
e1.forEach{
println(it)
}
for((key:String,value :String) in map2){
println("key=${key}, value=${value}")
}
结果
1=2
2=3
key=1, value=2
key=2, value=3