Ruby 使用';的方法之间是否存在默认差异';没有,用红宝石?

Ruby 使用';的方法之间是否存在默认差异';没有,用红宝石?,ruby,methods,Ruby,Methods,使用“!”的方法之间是否存在默认差异没有,用红宝石 collect v collect! flatten v flatten! 等等..在ruby中,主要区别在于,方法是自私的,即它们将更改应用于self对象。当未进行任何更改时,它们返回nil,而非方法创建新的修改对象 在Rails中,区别在于,方法是非的安全版本方法,这意味着方法在执行过程中遇到错误时引发异常,而非方法只返回错误状态,通常是false条件。是和否。通常,它们用于改变内部状态、执行影响外部状态的操作(例如,写入数据库)、以不

使用“!”的方法之间是否存在默认差异没有,用红宝石

collect v collect!

flatten v flatten!
等等..

在ruby中,主要区别在于,
方法是自私的,即它们将更改应用于
self
对象。当未进行任何更改时,它们返回
nil
,而非
方法创建新的修改对象


在Rails中,区别在于,
方法是非
的安全版本方法,这意味着
方法在执行过程中遇到错误时引发异常,而非
方法只返回错误状态,通常是
false
条件。

是和否。通常,它们用于改变内部状态、执行影响外部状态的操作(例如,写入数据库)、以不同方式处理异常等的方法。但是
只是方法名称的一部分。感谢您的回答和额外的rails信息