在 ruby on rails 教程里,例子的方法名后面带有问号 请问这只是由于方法返回值为布尔类型,书写规范?还是 ruby 的其他判断之类?
class Word < String def palindrome? self == self.reverse end end
约定返回布尔
书写规范,如果返回到是布尔,就用问号
方法名后面还可以有!号
可以把他当做一种默认的约定的规范。 只是为了根据语意实现自释义。
约定。问号表示返回布尔值。在其他语言里约定相对方法名是 #is_adj() / #has_noun() 同理还有感叹号,表示方法对对象自身有副作用
超喜欢方法名可以带问号,非常优雅。