Kotlin基础(4)——Kotlin中的集合

(1)集合框架的接口类型对比

(2)集合框架的创建

Java中创建List集合:

List<Integer> intList=new ArrayList<>(Arrays.asList(1,2,3));

Kotlin中创建List集合:

        /**
         * 该函数返回不可变的List集合,只能访问不能添加和删除,该函数可接受0个或多个参数,这些参数将作为集合的元素。
         */
        val intList1=listOf<Int>(1,2,3)

        /**
         * 该函数返回不可变的List集合。该函数与前一个函数的唯一区别是,该函数会自动去掉传入的一系列参数中的null值。
         */
        val intList2= listOfNotNull(1,2,3)

        /**
         * 该函数返回可变的MutableList集合。该函数可接受0个或多个参数,这些参数将作为集合的元素。
         */
        val intList3= mutableListOf<Int>(1,2,3)

        /**
         * 该函数返回可变的ArrayList集合。该函数可接受0个或多个参数,这些参数将作为集合的元素。
         */
        val intList4= arrayListOf<Int>(1,2,3)

Kotlin中创建Map集合:

        /**
         * 创建可变的Map集合
         */
        val map1= mapOf<String,Any>("name" to "zhangsan","age" to 20)

        /**
         * 创建不可变的Map集合
         */
        val map2= mutableMapOf<String,Any>("name" to "zhangsan","age" to 20)

注意:这里的Any相当于Java中的Object

Kotlin中创建ArrayList:

val stringList=ArrayList<String>()

(3)集合框架的读写

Java中集合的添加:

        List<String> stringList=new ArrayList<>();
        for (int i=0;i<10;i++){
            stringList.add("num:"+i);
        }

Kotlin中集合的添加:

        val stringList=ArrayList<String>()
        for(i in 0 until 10){
            stringList.add("num:$i")
        }

或者

        val stringList=ArrayList<String>()
        for(i in 0 until 10){
            stringList+="num:$i"
        }

注意:对于List来讲,+=等价于add

Java中集合的删除:

        List<String> stringList=new ArrayList<>();
        for (int i=0;i<10;i++){
            stringList.remove("num:"+i);
        }

Kotlin中集合的删除:

        val stringList=ArrayList<String>()
        for(i in 0 until 10){
            stringList.remove("num:$i")
        }

或者

        val stringList=ArrayList<String>()
        for(i in 0 until 10){
            stringList-="num:$i"
        }

注意:对于List来讲,-=等价于remove

Java中对集合ArrayList的修改和读取:

stringList.set(5,"Hello");
String valueAt5=stringList.get(5);

Kotlin中对集合ArrayList的修改和读取:

stringList[5]="Hello"
val valueAt5=stringList[5]

Java中对集合Map的修改和读取:

HashMap<String,Integer> map=new HashMap<>();
map.put("Hello",10);
System.out.println(map.get("Hello"));

Kotlin中对集合Map的修改和读取:

val map=HashMap<String,Int>()
map["Hello"]=10
println(map["Hello"])

(4)Pair

val pair="Hello" to "Kotlin"
val pair2=Pair("Hello","Kotlin")
val first=pair.first
val second=pair.second
val(x,y)=pair//解构

(5)Triple

val triple=Triple("x",2,3.0)
val tripleFirst=triple.first
val tripleSecond=triple.second
val tripleThrid=triple.third
val (x,y,z)=triple//解构

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值