我认为按照惯例,只有带有感叹号的方法才能更改对象。
> array = [1, 2, 3]
=> [1, 2, 3]
> array.pop
=> 3
> array
=> [1, 2]
为什么 Array
的 pop
方法不调用 pop!
?
最佳答案
这不太正确。
潜在“危险”方法的名称(即修改自身或参数的方法,exit!(不像 exit 那样运行终结器)等)如果存在则应以感叹号结尾该危险方法的安全版本。
而且 pop 方法的名称准确地说明了它在做什么,因此无需使用感叹号对其进行签名。
关于ruby - 为什么Array的pop方法没有感叹号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11108432/