林在斯卡拉一個初學者,正在尋找最好的/慣用的方式做什麼,我打算在這裏做。斯卡拉一成不變的列表添加一個「單位」元素
這就是我想要做的
def someMethod(obj:MyObj):List[String] = {
List[String]() +:
{if (somecondition is satisfied) .. " element"} +:
{ if (another condition) .. " something else " }
}
也就是說該方法檢查輸入參數對象的某些屬性和元素添加到列表(也就是要返回)。如果沒有條件滿足,它應該返回一個空列表。
- 當然代碼不會編譯。但不知何故,我覺得List [T] + Unit應該返回List [T],這似乎很直觀。爲什麼我錯了?
和2.請告訴我正確的方式來做到這一點斯卡拉。如果我正在迭代一系列條件,我可以使用解析。
謝謝..這個工程。 – questionersam
你能解釋一下這段代碼的工作原理嗎?特別是我不知道是什麼'..'確實在斯卡拉... – ziggystar
@ziggystar沒有魔法在這裏,在斯卡拉'..'沒什麼,我剛剛從op片段中複製了一些代碼,我想他不想說這是公正的。我已經添加了有關事情如何工作和刪除的詳細信息,以消除混淆。 –