【问题标题】:Equivalent of array join() for Set in Ruby?Ruby中Set的数组join()等价物?
【发布时间】:2015-05-02 04:30:13
【问题描述】:

Ruby 中的 Set 类是否有等效的 array join()?还是最好只在 Set 类上修改我自己的补丁?

http://ruby-doc.org/stdlib-2.2.2/libdoc/set/rdoc/Set.html

【问题讨论】:

  • 为什么不先将集合转换为数组呢? (Set 是否实现了to_a
  • @PlatinumAzure 感谢这完美的工作

标签: ruby arrays set


【解决方案1】:

set.to_a.join 有什么问题?

需要记住的一点:文档说 “Set 实现了一个无重复值的无序值集合。” 这意味着不能保证顺序。对于to_a 方法,文档告诉您“元素的顺序不确定”

我不确定join 在这种情况下是否有意义...

【讨论】:

  • 这很好用,我什至没有想到使用 to_a!在排序的情况下,这是一个预处理脚本,用于构建用于将数据输入模型(随机森林和 SVM)的向量,特别是它将保存需要保存离散单词的全局字典,并且顺序不是问题.我以前使用 Arrays 构建它,但我正在尝试通过 Benchmark 类进行优化。无论如何,这非常感谢。
【解决方案2】:

没有直接的等价物,如返回通过使用分隔符连接集合的元素创建的字符串的方法,但您可以使用 #to_a 将其转换为数组,然后在其上调用 #join :

http://ruby-doc.org/stdlib-2.2.2/libdoc/set/rdoc/Set.html#method-i-to_a

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    • 2012-04-07
    • 1970-01-01
    • 1970-01-01
    • 2011-07-11
    • 2016-06-21
    相关资源
    最近更新 更多