39.ListBuffer、ArrayBuffer、Queue、Stack操作代码实战

一、ListBuffer、ArrayBuffer代码实战

    import scala.collection.mutable.ListBuffer   //可变的
    val listBuffer = new ListBuffer[Int]
    listBuffer += 1   //追加数据
    listBuffer ++= List(2,3)   //追加集合
    println(listBuffer)
    
    
    import scala.collection.mutable.ArrayBuffer   //可变的
    val arrayBuffer = new ArrayBuffer[Int]
    arrayBuffer += 1   //追加数据
    arrayBuffer += 2
    println(arrayBuffer)

输出:

ListBuffer(1, 2, 3)
ArrayBuffer(1, 2)

二、Queue、Stack代码实战

     //7
       import scala.collection.immutable.Queue   //不可变
    val empty = Queue[Int] ()
    val queue1 = empty.enqueue(1)  //追加一个元素后,变成了新的Queue,因为这里的Queue不可变
    val queue2 = queue1.enqueue(List(2,3,4,5))
    println(queue2)
    val (element, left) = queue2.dequeue   //把已有的Queue拆分成2部分,分别是第一个元素和由剩下的元素构成的Queue
    println(element + " " + left)
    
    println
    
    //7
    import scala.collection.mutable.Queue   //可变的
    val queue = Queue[String]()
    queue += "a"   //追加元素
    queue ++= List("b","c")  //追加列表
    println(queue)
    println(queue.dequeue)   //返回整个Queue的第一个元素,并且把其删除掉
    println(queue)
    
    println
    
    //7
    import scala.collection.mutable.Stack
    val stack = new Stack[Int]()
    stack.push(1)
    stack.push(2)
    stack.push(3)
    println(stack.top)  //返回栈顶元素
    println(stack)
    println(stack.pop)   //返回栈顶元素,并弹出栈顶元素
    println(stack)
    

输出:

Queue(1, 2, 3, 4, 5)
1 Queue(2, 3, 4, 5)

Queue(a, b, c)
a
Queue(b, c)

3
Stack(3, 2, 1)
3
Stack(2, 1)

参考资料来源于大数据梦工厂 深入浅出scala 第39讲 由王家林老师讲解




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值