Skip to content

Latest commit

 

History

History
47 lines (31 loc) · 1.08 KB

Intro-To-Scala.md

File metadata and controls

47 lines (31 loc) · 1.08 KB

Intro to Scala

Builds on top of the JVC. Scala also does things like treating functions as first class citizens. You define functions without names and as closures.

The adoption of Scala use it for a variety of projects.

Apache Spark is also written in Scala.

There are two ways to create variables: val (constant) and var (mutable).

scala> val greeting = "Hello World!"
greeting: String = Hello World!

scala> greeting = "Allo"
<console>:12: error: reassignment to val
       greeting = "Allo"
                ^

scala> var mes = "Hello!"
mes: String = Hello!

scala> mes
res0: String = Hello!

scala> mes = "Hello World!"
mes: String = Hello World!

scala> mes
res1: String = Hello World!

We can always provide type information or the semi-colon if we wanted to, although not recommended (interesting they would say this...).

Function Declarations

Last evaluation implicitly returned.

You must declare return type for a recursive function though.

def multipliedByTwo(x: Int) = (x == 0) x else x*2

def multipliedByTen(x: Double = 10, y: Double): Double {
	x * y
}