簡體   English   中英

如何在Scala中將此代碼更改為函數式編程?

[英]How do I change this code to be functional programming in scala?

我是函數編程的新手,正在閱讀本書時。 基本上是說,如果您的代碼包含“ var”,則意味着您仍在按勢在必行。 我不確定如何將代碼更改為功能性方式。 請提出建議。

因此,基本上,這段代碼要做的是處理文本中的某些文本,並使用正則表達式從“ taggedText”中提取特定文本,然后將其添加到列表中並將該列表轉換為json。


    val text = params("text")
    val pattern = """(\w+)/ORGANIZATION""".r

    var list = List[String]()
    val taggedText = processText(text)
    pattern.findAllIn(taggedText).matchData foreach {
      m => list ::= m.group(1)
    }

    pretty(render(list)) // render to json

嘗試將中間部分替換為

val list = pattern.findAllIn(taggedText).matchData.map(m => m.group(1)).toList

您可以根據需要將m => m.group(1)編寫為_.group(1)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM