Advertisement
Guest User

Untitled

a guest
Mar 15th, 2014
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.52 KB | None | 0 0
  1. import scala.collection.mutable.ArrayBuffer
  2.  
  3. abstract class IntQueue {
  4.   def get(): Int
  5.   def put(x: Int)
  6. }
  7.  
  8. class BaseIntQueue extends IntQueue {
  9.   private val buffer = new ArrayBuffer[Int]
  10.   def get(): Int = buffer.remove(0)
  11.   def put(x: Int) { buffer += x }
  12. }
  13.  
  14. trait Doubling extends IntQueue {
  15.   abstract override def put(x: Int) { super.put(2 * x) }
  16. }
  17.  
  18. class MyIntQueue extends BaseIntQueue with Doubling
  19.  
  20. val queue = new MyIntQueue
  21. queue.put(10)
  22. queue.put(20)
  23. println(queue.get)
  24. println(queue.get)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement