-3

我的字符串数组是这样的

arr = ["a", "apple", "b", "banyan", "banana", "c", "cat"]

我想将baynan合并到香蕉中,所以我的数组看起来像这样,我可以创建一个哈希图

arr = ["a", "apple", "b", "banyanbanana", "c", "cat"]
hash_arr = Hash[*arr]

但我仍然不知道通过 ruby​​ 将特定的两个相邻值合并到同一个数组中。合并没有固定位置,因此我可以从异常“哈希的奇数个参数”中脱颖而出

先感谢您

4

2 回答 2

3
arr = ["a", "apple", "b", "banyan", "banana", "c", "cat"]

indexes = [3, 4] # Define which two elements to merge.

arr[indexes[0]] += arr.delete_at(indexes[1])

arr # => ["a", "apple", "b", "banyanbanana", "c", "cat"]
于 2013-06-24T11:57:05.893 回答
1

因此,对于一个值:

 arr = ["a", "apple", "b", "banyan", "banana", "c", "cat"]
 index = 3 # you can write `index = arr.find_index("banana")`
 arr[index..(index+1)] = arr[index] + arr[index+1]

您可以使用官方 ruby​​ 文档来了解哪些方法类支持:http ://ruby-doc.org/core-2.0/Array.html

于 2013-06-24T12:08:56.340 回答