當處理現有庫(不能編輯構造函數或伴隨對象)時,我經常發現需要調用對象的init/setup過程,然後返回對象本身。我通常最終會做類似下面的事情。處理副作用:幫助函數鏈構造函數和設置方法
def createObject: MyObject = {
val o = new MyObject
o.init()
o
}
這是恕我直言不是非常優雅,我想知道是否有這樣做,例如更好的方法,一個的建立和取得功能的線沿線的:
def createObject: MyObject = {
setupAndGet(new MyObject) { _.init(v) }
}
是否有斯卡拉這個任何現有的解決方案(除了寫我自己的)?
這不是「功能風格」。 'o.store'行爲有副作用,所以你不可能在Scala中找到你想要的內容。 –