响应列表返回空嵌套数组:[[], [], []]如何更好地测试Ruby以下嵌套数组为空?
[[], [], []]
mrwjdhj31#
你可以用Array#empty?使用Array#all?检查所有嵌套数组为空
Array#empty?
Array#all?
[[], [], []].all?(&:empty?) # => true [[1], [2], []].all?(&:empty?) # => false [[1], [2], [3]].all?(&:empty?) # => false
使用Array#any?检查至少一个嵌套为空
Array#any?
[[], [], []].any?(&:empty?) # => true [[1], [2], []].any?(&:empty?) # => true [[1], [2], [3]].any?(&:empty?) # => false
6yoyoihd2#
如果您想要处理深度嵌套的数组,您可能希望首先flatten您的数组:
flatten
[[], [], []].flatten.empty? => true [[], [[], [[]]]].flatten.empty? => true [[], [[], [[1]]]].flatten.empty? => false
2条答案
按热度按时间mrwjdhj31#
你可以用
Array#empty?
使用
Array#all?
检查所有嵌套数组为空使用
Array#any?
检查至少一个嵌套为空6yoyoihd2#
如果您想要处理深度嵌套的数组,您可能希望首先
flatten
您的数组: