Scalaのローカル関数(ネストされた関数)を試してみました。
def func1(s1:String):String={
def func2(s2:String):String={
def func3(s3:String):String={
return s3+"3"
}
return func3(s2+"2")
}
return func2(s1+"1")
}
実行結果:
scala> def func1(s1:String):String={
| def func2(s2:String):String={
| def func3(s3:String):String={
| return s3+"3"
| }
| return func3(s2+"2")
| }
| return func2(s1+"1")
| }
func1: (String)String
scala> println(func1("hoge"))
hoge123