Scala 之 队列(Queue) 入门

Scala的队列:

  1. 队列是一个有序列表,在底层可以用数组或是链表来实现。
  2. 其输入和输出要遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取
  3. 在 Scala 中,由设计者直接给我们提供队列类型 Queue 使用。
  4. 在 scala 中, 有 scala.collection.mutable.Queue 和 scala.collection.immutable.Queue , 一般来说,我们在开发中通常使用可变集合中的队列。
  5. 我们在此只讨论 scala.collection.mutable.Queue
创建队列:
val q1 = new mutable.Queue[Int] println(q1)
队列元素的追加数据:
//给队列增加元素 
q1 += 9 // (9)
println("q1=" + q1) // (9)
q1 ++= List(4,5,7) // 默认值直接加在队列后面 
println("q1=" + q1) //(9,4,5,7)
q1 += List(10,0) // 表示将 List(10,0) 作为一个元素加入到队列中, 泛型需要[Any]
删除和加入队列元素:
  1. 在队列中,严格的遵守,入队列的数据,放在队位,出队列的数据是队列的头部取出.
//dequeue 从队列的头部取出元素 q1 本身会变
val queueElement = q1.dequeue() 
println("queueElement=" + queueElement + "q1="+q1)

//enQueue 入队列,默认是从队列的尾部加入. Redis 
q1.enqueue(100,10,100,888)
println("q1=" + q1) // Queue(4, 5, 7, 100, 10, 100, 888)
返回队列的元素:
//队列 Queue-返回队列的元素
//1. 获取队列的第一个元素
println(q1.head) // 4, 对 q1 没有任何影响
//2. 获取队列的最后一个元素
println(q1.last) // 888, 对 q1 没有任何影响
//3. 取出队尾的数据 ,即:返回除了第一个以外剩余的元素,可以级联使用 
println(q1.tail) // (5, 7, 100,10,100,888)
println(q1.tail.tail.tail.tail) // (10,100,888)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静谧之心

感谢您的鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值