您现在的位置是:首页 >技术教程 >Scala学习(九)---List集合网站首页技术教程

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

肥大毛 2024-06-26 12:01:02
简介Scala学习(九)---List集合

1.List

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

1.1 不可变List集合

创建一个不可变list集合

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

对集合进行遍历

list.foreach(println)

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

此处的println方法为官方提供的一个用于遍历输出的方法,通过查看foreach和println方法的源码,可以看到两者可以进行搭配来快速完成对集合的遍历。
在这里插入图片描述
在这里插入图片描述
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))

在这里插入图片描述

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))

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

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。