k47.cz    — každý den dokud se vám to nezačne líbit
foto Praha výběr povídky kultura | twitter FB


Scala - operátor mocniny

21. 12. 2010 — k47 (CC by)

V některých jazycích je přítomen operátor mocniny (obvykle ** nebo ^). Scala ho nemá, ale jako všechno ostatní se dá snadno doplnit.


package k47.hacks

class Powable(val v: Double) {
  def **(exp: Double) = math.pow(v, exp)
}

implicit def doubleToPowable(v: Double) = new Powable(v);

// test:
10 ** 3    // ekvivalent k math.pow(10, 3)
2 ** 8

'a' ** 'b' // funguje na všech primitivních numerických typech, tady např. Char
1.1 ** 1.1 // nebo float/double
píše k47 & hosté, ascii@k47.cz