【问题标题】:Sort list of string with localization in scala在scala中对具有本地化的字符串列表进行排序
【发布时间】:2014-09-11 15:58:32
【问题描述】:

我想对字符串列表进行排序。我知道这在 scala 中并不难,但我的问题是,我需要对不同语言的列表进行排序。例如,我知道我可以很容易地对英文字符串进行排序。但是俄语或罗马尼亚语呢? 在scala中对多种语言的字符串进行排序的最佳实践是什么? scala排序实现是否只支持英文字母?

在java中我会做这样的事情:

Collator coll = Collator.getInstance(locale);
coll.setStrength(Collator.PRIMARY)
Collections.sort(words, coll);

我希望有人可以帮助我。在此先感谢 Nico。

【问题讨论】:

    标签: string scala sorting localization internationalization


    【解决方案1】:

    这里没有什么不同:)。 Collator 是可比较的,因此您将其转换为 Ordering,然后将其用于排序。

    scala> val ord = Ordering.comparatorToOrdering(Collator.getInstance(Locale.FRENCH));
    ord: scala.math.Ordering[Object] = scala.math.LowPriorityOrderingImplicits$$anon$7@759fad4
    
    scala> Seq("deux","Bonsoir","Merci").sorted(ord)
    res13: Seq[String] = List(Bonsoir, deux, Merci)
    

    【讨论】:

      猜你喜欢
      • 2018-10-22
      • 2020-02-13
      • 2015-03-26
      • 1970-01-01
      • 2012-10-05
      • 2018-02-21
      • 2012-08-07
      • 2021-06-10
      相关资源
      最近更新 更多