如何检查二维数组的第一个成员中是否存在值

问题描述 投票:0回答:2

我正在尝试检查二维数组的第一个值是否具有我正在测试的值。数组是这样的

[[2,5],[3,1],[4,1]]

我只想检查数组的第一个成员(这里是 2 或 3 或 4)

我正在为一维数组做类似的事情,但它不适用于两维数组

[:cart] << [id, 1] unless [:cart].include?(id)
arrays ruby-on-rails ruby multidimensional-array
2个回答
0
投票

您可以将前几个数字提取到一维数组中并使用您当前的逻辑。

first_items = arrays.map { |sub_array| sub_array[0] }

0
投票

您可以将

any?
与块一起使用来迭代 2D 数组并检查每个子数组的第一个元素:

cart << [id, 1] unless cart.any? { |sub_array| sub_array[0] == id }
© www.soinside.com 2019 - 2024. All rights reserved.