如果嵌套数组为空,如何签入Ruby?

f3temu5u  于 2022-10-15  发布在  Ruby
关注(0)|答案(2)|浏览(164)

响应列表返回空嵌套数组:[[], [], []]
如何更好地测试Ruby以下嵌套数组为空?

mrwjdhj3

mrwjdhj31#

你可以用Array#empty?
使用Array#all?检查所有嵌套数组为空

[[], [], []].all?(&:empty?)

# => true

[[1], [2], []].all?(&:empty?)

# => false

[[1], [2], [3]].all?(&:empty?)

# => false

使用Array#any?检查至少一个嵌套为空

[[], [], []].any?(&:empty?)

# => true

[[1], [2], []].any?(&:empty?)

# => true

[[1], [2], [3]].any?(&:empty?)

# => false
6yoyoihd

6yoyoihd2#

如果您想要处理深度嵌套的数组,您可能希望首先flatten您的数组:

[[], [], []].flatten.empty?
=> true

[[], [[], [[]]]].flatten.empty?
=> true

[[], [[], [[1]]]].flatten.empty?
=> false

相关问题