【问题标题】:Common idiom in Java to Scala, traverse/Iterate Java list into Scala listJava到Scala的常用成语,遍历/迭代Java列表到Scala列表
【发布时间】:2011-02-11 13:14:23
【问题描述】:

我正在处理一个 XML 文档并遍历节点。我想遍历节点并构建某种类型的新列表。我将如何使用 Scala 做到这一点:

这是我的 XML 遍历代码:

  def findClassRef(xmlNode: Elem) = {

    xmlNode\"classDef" foreach { (entry) =>
        val name    = entry \ "@name"
        val classid = entry \ "@classId"
        println(name + "//" + classid)
    }
  }

println 所在的行,我想将元素追加到列表中。

【问题讨论】:

    标签: java scala idioms


    【解决方案1】:

    地图应该可以工作。如果你不需要一个 List 实例,你可以删除 toList。

    xmlNode \"classDef" map { (entry) =>
      val name    = entry \ "@name"
      val classid = entry \ "@classId"
      name + "//" + classid
    } toList
    

    【讨论】:

    • 那行得通。有没有“追加到列表”的方式来做到这一点?
    • @Berlin 为什么要显式附加到列表? 'map' 在内部附加到一个新集合。
    猜你喜欢
    • 1970-01-01
    • 2011-07-15
    • 2023-03-26
    • 2017-01-19
    • 1970-01-01
    • 2016-04-30
    • 1970-01-01
    • 2011-02-16
    • 2016-10-09
    相关资源
    最近更新 更多