Verwendung von Lazy Val zum Cachen der Zeichenfolgendarstellung

Ich habe den folgenden Code in JAXMags Scala-Sonderausgabe gefunden:

package com.weiglewilczek.gameoflife

case class Cell(x: Int, y: Int) {
  override def toString = position
  private lazy val position = "(%s, %s)".format(x, y)
}

Nimmt die Verwendung vonlazy val im obigen Code bieten erheblich mehr Leistung als der folgende Code?

package com.weiglewilczek.gameoflife

case class Cell(x: Int, y: Int) {
  override def toString = "(%s, %s)".format(x, y)
}

Oder handelt es sich nur um eine unnötige Optimierung?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage