VOOZH about

URL: https://www.geeksforgeeks.org/scala/scala-product3/

⇱ Scala | Product3 - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Scala | Product3

Last Updated : 13 May, 2019
Product3 is a trait in Scala, which is a Cartesian product of three elements. The Linear Supertypes here are Product, Equals, and Any and the known subclass here is Tuple3. It extends the trait Product i.e,
trait Product3[+T1, +T2, +T3] extends Product
Where, T1, T2, and T3 are the used parameter types of the Scala.
  1. Abstract Value Members The abstract value members here are:
    • abstract def _1: T1
      It returns the elements of the first parameter type.
    • abstract def _2: T2
      It returns the elements of the second parameter type.
    • abstract def _3: T3
      It returns the elements of the third parameter type.
    • abstract def canEqual(that: Any): Boolean
      It returns true if two instances are equal else returns false.
    Example :
    Output:
    GeeksforGeeks
    32
    43.0
    
    Here, we have utilized abstract value members for accessing the elements.
  2. Concrete Value Members The concrete value members here are:
    • def productArity: Int
      It returns the number of parameters in Product3 trait.
    • def productElement(n: Int): Any
      It returns nth element.
    • def productIterator: Iterator[Any]
      It returns an iterator by default.
    • def productPrefix: String
      It returns the empty string by default.
    Example :
    Output:
    3
    a
    Tuple3
    
    Here, productPrefix will return Tuple3 as Tuple3 is a final case class that extents Product3.
Comment
Article Tags:

Explore