Scala学习(九)---List集合

文章目录

  • 1.List
      • 1.1 不可变List集合
      • 1.2 可变集合ListBuffer

1.List

List集合默认为不可变集合,List集合在实例化的时候,无法通过new关键字进行实例化,只能通过伴生apply方法来对其进行实例化

1.1 不可变List集合

创建一个不可变list集合

val list:List[Int] = List(1, 2, 3)

对集合进行遍历

list.foreach(println)

运行结果:
在这里插入图片描述

此处的println方法为官方提供的一个用于遍历输出的方法,通过查看foreach和println方法的源码,可以看到两者可以进行搭配来快速完成对集合的遍历。
Scala学习(九)---List集合_第1张图片
Scala学习(九)---List集合_第2张图片
List增加数据
因为list集合是一个不可变集合,所以在进行插入数据的时候,会把数据全部插入到一个新的list集合中

    val list1:List[Int]=list :+10//:+头插法
    println(list1)

    val list2:List[Int]=10::list//尾插法
    println(list2)

运行:
在这里插入图片描述
集合间的合并

    val list3 = list1 ::: list2
    println(list3)

在这里插入图片描述
取指定元素
取出list集合中下标为0的元素

    val i = list(0)
    println(i)

空集合Nil
为了构建链表 第一个结点next指向第二个结点,第二个结点是最后一个结点,所以第二个结点的next要指向空

    val list4:List[Int]=1::2::3::4::Nil
    println(list4.foreach(println))

Scala学习(九)---List集合_第3张图片

1.2 可变集合ListBuffer

创建一个可变集合ListBuffer

    val listBuffer:ListBuffer[Int] = new ListBuffer[Int]
    val listBuffer1 = ListBuffer(1, 2, 3, 4)//通过调用伴生apply方法完成对象创建

向集合中添加数据

    listBuffer1.append(5)
    println(listBuffer1)

删除元素

    listBuffer1.remove(1,3)
    println(listBuffer1)

查看修改的元素

    listBuffer1(0)=200
    println(listBuffer1(0))

运行结果:
Scala学习(九)---List集合_第4张图片

你可能感兴趣的:(scala,scala,学习,list)