这是rury取模运算符的处理方法。
ruby中变量没有类,值才有类。ruby没有变量声明的概念。
将变量初始化为nil是个好习惯,这当然不会给变量指定类型,也不是真正的初始化,但将告诉解析器这是变量名而不是方法名。
解析器如何确定标识符是变量还是方法?规则是:如果解析器看到标识符在使用前被赋值,就认为是变量;否则认为是方法名。
loop不是关键字,它是Ternel提供的一个方法,不是控制结构。
TureClass和FalseClass是不同的类,它们唯一的实例分别是true和false.
ruby的很多运算符与C都相同或类似。但ruby没有自加(++)和自减(--)运算符。
不要将&&/||同&/|混淆,这些运算符的用法与C语言相同;前者用于布尔运算,后者用于算术或者按位运算。
and-or的优先级低于&&-||。赋值运算符的优先级也高于and-or。
“一旦理解,一切都是直观的”——《The Ruby Way》(中文第二版P26直觉训练)