【发布时间】:2023-04-06 06:48:01
【问题描述】:
使用 Ruby 1.9。我有以下内容:
add1 = [record['a'], record['b'], record['c']]
full_add = add1.reject!(&:empty?).join(", ")
# scenario 1
record['a'] = 'Good'
record['b'] = ''
record['c'] = 'Fine'
# >> Good, Fine
# scenario 2
record['a'] = 'Good'
record['b'] = 'Boy'
record['c'] = 'Fine'
# >> undefined method `join' for nil:NilClass (NoMethodError)
当我检查场景 2 的 full_add 时,它返回错误,因为没有数组为空。我应该如何解决这个问题?谢谢。
【问题讨论】:
-
reject!返回nil如果没有被拒绝,请改用reject(不带!)。
标签: ruby