Scala:如何从某些集合创建XML节点
发布时间:2020-12-16 09:14:04 所属栏目:安全 来源:网络整理
导读:如果你有这样的东西: val myStuff = Array(Person("joe",40),Person("mary",35)) 如何使用该数据作为节点创建XML值?我知道如何在XML表达式中使用{大括号}来放置一个值,但这是值的集合.我需要明确地迭代还是有更好的东西? val myXml = people{ /* what her
如果你有这样的东西:
val myStuff = Array(Person("joe",40),Person("mary",35)) 如何使用该数据作为节点创建XML值?我知道如何在XML表达式中使用{大括号}来放置一个值,但这是值的集合.我需要明确地迭代还是有更好的东西? val myXml = <people>{ /* what here?! */ }</people> 得到的值应该是: <people><person><name>joe</name><age>40</age></person> <person><name>mary</name><age>39</age></person></people> 解决方法
由于它是一个功能性编程语言,Array.map可能是您正在寻找的:
class Person(name : String,age : Int){ def toXml() = <person><name>{ name }</name><age>{ age }</age></person>; } object xml { val people = List( new Person("Alice",16),new Person("Bob",64) ); val data = <people>{ people.map(p => p.toXml()) }</people>; def main(args : Array[String]){ println(data); } } 结果是: <people><person><name>Alice</name><age>16</age></person><person><name>Bob</name><age>64</age></person></people> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |