ruby - 重新排序 ruby​​ 数组

标签 ruby

我有一个 ruby 数组:

["A", "C", "B", "D", "F", "E"]

用户将提供输入,例如

input = "B"

我想移动数组中的值,所以数组的第一项等于input,并得到一个新数组的结果:

["B", "D", "F", "E", "A", "C"]

用户将从下拉选项中进行选择,因此他们只能从原始数组中选择字母。

最佳答案

您可以使用 Array#rotate .

arr = ["A", "C", "B", "D", "F", "E"]

arr.rotate(arr.index('B'))
 #=> ["B", "D", "F", "E", "A", "C"]

关于ruby - 重新排序 ruby​​ 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51015705/

相关文章:

ruby-on-rails - ruby on rails 固定装置中的自动关联

ruby - 修改线程之间公共(public)哈希的不同键是线程安全的吗?

ruby - {{ root_url }} 在 Octopress 中是空白的

ruby - Ruby 1.9 中的大小写表达式不同?

ruby-on-rails - 如何在 Nokogiri 中创建具有属性和值的 xml 元素

sql - 奇怪的sql查询实现连接表

ruby-on-rails - Rails 模型属于属于模型的模型,但我想使用另一个名称

ruby-on-rails - 此代码能够从文件系统读取 CSV 文件,但是从 URL 读取呢?

ruby - 更惯用的 ruby​​ 写法 @var = obj ['blah' ] 除非 obj ['blah' ].nil?

ruby-on-rails - 基本表单操作不适用于 heroku(但在本地有效)