以下是我想要的。 [[1, 3, 2], [2, 1, 3]]
a = [[1, 2, 3], [1, 3, 2], [2, 1, 3]]
b = [[1, 2, 3]]
a - b
=> [[1, 3, 2], [2, 1, 3]]
但是以下没有
b = [1, 2, 3]
a - b
=> [[1, 2, 3], [1, 3, 2], [2, 1, 3]]
现在我的问题是如何将数组[1, 2, 3]
转换为[[1, 2, 3]]
?
或者我能做到的任何其他方式?
我也试过过Array#drop,但它没有用。
答案 0 :(得分:2)
您可能想要使用Array#delete:
a = [[1, 2, 3], [1, 3, 2], [2, 1, 3]]
b = [1, 2, 3]
a.delete b
a #=> [[1, 3, 2], [2, 1, 3]]
要回答您的确切问题,您可以将任何对象(甚至数组)包装到数组中:
[object]
答案 1 :(得分:2)
我对这个问题缺少什么?我猜你得失败的原因是答案的简单性,暗示你没有做任何研究。
b = [1,2,3]
[b]
#=> [[1, 2, 3]]
答案 2 :(得分:1)
如果您看到Array#-文档,则说明
返回一个新数组,它是原始数组的副本,删除任何数组 也出现在other_ary中的项目。
所以
[[1,2,3]]
时,只有一个元素,即[1,2,3]
[1,2,3]
时,有三个元素1
,2
和3
不在数组a
中最后,如果您有b = [1,2,3]
,则需要提供
a - [b]
获得理想的结果。