程序员人生 网站导航

大数据系列修炼-Scala课程39

栏目:框架设计时间:2016-11-19 14:40:27

大数据系列修炼-Scala课程39


核心内容:
1、ListBuffer、ArrayBuffer、Queue、Stack操作代码实战


1、ListBuffer、ArrayBuffer、Queue、Stack操作代码实战

1>ListBuffer、ArrayBuffer分别是List与Array的新版本,在ListBuffer、ArrayBuffer中可以对List与Array进行更加灵活、高效的操作;
Queue(对列)与Stack(堆)是两种经典的数据结构。
2>用+=可以向集合当中添加具体的元素,用++=可以向集合当中添加具体的集合(List或Array)。


实例程序:

object App { //本节的重点是掌握ListBuffer、ArrayBuffer、Queue队列、Stack堆的操作 def main(args:Array[String]):Unit= { import scala.collection.mutable.ListBuffer val listBuffer = new ListBuffer[Int]() //需要指定集合的类型 listBuffer += 10 listBuffer ++= List(20,30,40) val str1 = listBuffer.mkString("\t") println(str1)//10 20 30 40 import scala.collection.mutable.ArrayBuffer val arrayBuffer = new ArrayBuffer[Int]() arrayBuffer += 10 arrayBuffer ++= Array(20,30,40) val str2 = arrayBuffer.mkString("\t") println(str2)//10 20 30 40 //队列本身有可变的与不可变的,在这里仅测试可变的队列 import scala.collection.mutable.Queue val queue = Queue.apply[Int]() //队列只能通过伴生对象创造实例对象 queue += 10 queue ++= List(20,30,40) println(queue.mkString("\t")) //10 20 30 40 val ele1 = queue.dequeue() //从队列当中返回1个元素 println(ele1) //10先进来的先出去 println(queue) //还剩Queue(20, 30, 40) //测试堆Stack import scala.collection.mutable.Stack val stack = new Stack[Int]() stack.push(10) stack.push(20) stack.push(30) println(stack.mkString("\t"))//30 20 10 println(stack.top)//30 top仅查看,不弹出 println(stack)//Stack(30, 20, 10) println(stack.pop())//30 pop既查看,又弹出 println(stack) //Stack(20, 10) } }
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐