How to return a function in scala

前端 未结 5 1042
忘了有多久
忘了有多久 2021-02-02 14:31

How can I return a function side-effecting lexical closure1 in Scala?

For instance, I was looking at this code sample in Go:

5条回答
  •  鱼传尺愫
    2021-02-02 14:52

    Slightly shorter, you don't need the return.

    def fib() = {
        var a = 0
        var b = 1
        () => { 
            val t = a;
            a = b
            b = t + b
            b
        }
    }
    

提交回复
热议问题