我有一个字符串数组的数组.
它看起来像这样:
big_array = Array.new
big_array[0] = ["aib","ulster","anglo","hsbc"]
big_array[1] = ["ulster","hdfc","citibank"]
big_array[2] = ["aib", "citibank"]
Run Code Online (Sandbox Code Playgroud)
现在,由此,我想创建另一个包含银行名称的数组.我知道如何做到这一点的唯一方法是.
big_array.join(" ").split(" ").uniq
Run Code Online (Sandbox Code Playgroud)
现在,这适用于少量数据.但是如果big_array的索引达到1000s那会怎么样呢.似乎不是最好的方法.有没有更好的方法来实现这个?
PS我刚刚给出了一个我正在尝试做的例子.不是实际的代码.只想要一个更优雅的解决方案.
你可以使用Array#flatten:
big_array = Array.new
big_array[0] = ["aib","ulster","anglo","hsbc"]
big_array[1] = ["ulster","hdfc","citibank"]
big_array[2] = ["aib", "citibank"]
big_array.flatten.uniq
# => ["aib", "ulster", "anglo", "hsbc", "hdfc", "citibank"]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
775 次 |
| 最近记录: |