| 
Scala example source code file (patterns.scala)
 The Scala patterns.scala source code
trait Option[+a] {}
case class Some[a](x: a) extends Option[a] {
  override def toString(): String = "Some(" + x + ")"
  override def equals(that: Any): Boolean = that match {
    case Some(x) => this.x == x
    case _ => false
  }
  override def hashCode(): Int = getClass().hashCode() * 41 + x.hashCode()
}
case object None extends Option[Nothing] {
  override def toString(): String = "None"
  override def equals(that: Any) = that match {
    case None => true
    case _ => false
  }
  override def hashCode(): Int = getClass().hashCode()
}
object test {
  def println(str: String): Unit = java.lang.System.out.println(str)
  def print(opt: Option[String]) = opt match {
    case Some(x) => println(x)
    case None => println("nothing")
  }
}
// if bodies are duplicated, then we would get an error like "double definition"
trait John[A,B] {
  def filter(x:Any) =    x match {
    case (x::xs, _) => "ga"
    case _ => {x:String => "foobar"}
  }
}
Other Scala examples (source code examples)Here is a short list of links related to this Scala patterns.scala source code file:  | 
| ... this post is sponsored by my books ... | |
         
           #1 New Release!  | 
      
         
           FP Best Seller  | 
  
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse 
URI on this website is
paid back to open source projects.