【问题标题】:Scala: good way to keep pairs of stringsScala:保存成对字符串的好方法
【发布时间】:2011-04-26 13:44:23
【问题描述】:

对于小型集合,保存不一定是键值(可能具有重复键)的字符串对的一种巧妙方法是什么? List[List[String]] 显然有效,但看起来很脏。

干杯
帕萨

【问题讨论】:

    标签: scala map set scala-collections


    【解决方案1】:

    List[(String,String)] 是标准解决方案:

    scala> List(("foo","bar"), ("foo","baz"))
    res1: List[(java.lang.String, java.lang.String)] = List((foo,bar), (foo,baz))
    

    【讨论】:

    • 没错!元组的好处是相等、模式匹配等按预期工作。例如("foo", "bar") == ("foo", "bar") 返回true
    • 您还可以获得成对的字典顺序,这是一个非常好的免费赠品。
    • 我昨天遇到了这个漂亮的元组技巧:goo.gl/MT6J。它很好地利用了所有元组类都为它们定义了Ordering trait 的实例。
    【解决方案2】:

    元组是表示对的理想数据结构。

    所以使用(String, String) 元组的列表。

    【讨论】:

      猜你喜欢
      • 2012-07-13
      • 1970-01-01
      • 2011-10-22
      • 2017-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多