scala的List

33 阅读1分钟

List的定义

List 是一种有序的数据结构,它是一种链表结构。

基本代码

object list01 {
  def main(args: Array[String]): Unit = {
    //不可变的列表
    val list1=List("湖北","湖南","广东")
    //list1 +="北京"  错误,不可变列表,不能直接 +=
    println(list1)

    //可变的列表
    val list2=scala.collection.mutable.ListBuffer("湖北","湖南","广东")
    //可变列表,可以 +=
    list2 +="北京"
  }
}

List的基本操作

  1. 添加(在头部添加,在尾部添加,在指定位置插入
  2. 删除(删除元素,删除某个位置上的元素)
  3. 判断元素是否存在
  4. 合并
  5. 遍历,用 for,foreach方法

基本代码

/**
 * 可变list的常见操作
 *
 *    1. 添加(在头部添加,在尾部添加,在指定位置插入)
 *    2. 删除(删除元素,删除某个位置上的元素)
 *    3. 判断元素是否存在
 *    4. 合并
 *    5. 遍历,用 for,foreach方法
 */
object list02 {
  def main(args: Array[String]): Unit = {
    val list1=scala.collection.mutable.ListBuffer("湖北")

    //1. 添加,在尾部添加
    list1 += "浙江"
    println(list1)//ListBuffer(湖北,浙江)

    //2. 添加,在头部添加
    list1.prepend("潜江")// 潜江,湖北,浙江
    println(list1)

    //3. 添加,在指定位置插入
    list1.insert(2,"四川")// 潜江,湖北,四川,浙江
    println(list1)

    //4. 删除,删除指定的元素,只删除找到的这一个
    list1 -="潜江"
    //5. 删除某个下标上的元素
    println(list1)
    list1.remove(0) //删除列表中的第一个元素,下标为0的元素
    println(list1)

    //6. 判断是否存在

    if(list1.contains("潜江")){
      println("潜江在列表中")
    }else{
      println("潜江不在列表中")
    }

    //7. 合并
    val list2=scala.collection.mutable.ListBuffer(1,2,3)
    val list3=scala.collection.mutable.ListBuffer(4,5,6)
    val list4=list2 ++ list3
    val list5=list2.concat(list3)
    println(list4)
    println(list5)

    //8. 遍历 用 for,foreach方法
    list1.foreach(ele =>{
      println(ele)
    })
    for(ele <- list1){
      println(ele)
    }
  }
}