Statement_vs_Expression
//Statement - Statement exexutes code but there's no value returned.
//Expression - Code that evaluates to a value.
/* Don't use 'return'
One of hte keys to using expressions is realizing that there's
no need for a return statement. An expression evaluates to a value so there's
no need to return
*/
//a method that using statements
def createErrorMessage(errCode:Int):String = {
var result:String = _
errCode match {
case 1 => result = "Network Failure"
case 2 => result = "I/O Failure"
case _ => result = "Unknown Error"
}
result
}
//Better way, use expressions
def createErrorMessage(errCode: Int):String = errorCode match {
case 1 => "Network Failure"
case 2 => "I/O Failure"
case _ => "Unknown Error"
}
//Code utilizing mutable objects tends to be written in imperative style.