1.1.1 ruby命令的执行方法
helloruby.rb (Ruby 文件)
进入此文件被保存的文件夹目录,在 terminal 中执行
step0. cd rubylearning/ch01 (这里写你自己的文件夹路径)
step1. ruby helloruby.rb
1.1.2 irb 命令的执行方法
与ruby命令一样,irb命令在控制台执行,不过不需要指定程序文件。
step0. terminal 输入 irb
step1. 继续输入 print(“Hello,Ruby.\n”)
执行结果
在控制台写的程序可以马上在控制台里执行,这对进行简单的小测试非常方便。但是,这个方法并不适合大程序,这时我们应该考虑使用ruby命令。
退出 irb : 输入 exit 或 Ctrl+d
1.2 程序解说
字符串、数值、时间等各种数据,在Ruby中都是对象。
print是一个方法。所谓方法,就是对象的行为。
print方法的作用就是输出()里的内容。
我们在说明print方法时,会说“print方法会把作为参数传递过来的字符串,输出到控制台中”。
1.3 字符串
1.3.1
字符\n是换行符。利用换行符,我们可以用普通的字符达到换行的效果
除了\n以外,当我们想在字符串里嵌入特殊符号时,也会用到\
程序会对字符串里\后的字符做特殊处理。因此,如果字符串里需要包含\,程序要写成\
输出结果为:Hello, “Ruby!”.
|
|
输出结果为:Hello \ Ruby!
1.3.2 ‘’ 与 “”
在单引号里,像\n这样的特殊字符不经过转义,程序会原封不动地直接输出。
但也有例外,例如在字符串里想嵌入\与单引号时,还是需要在之前加上\。也就是像这样,
|
|
输出结果为:Hello, \ ‘Ruby’.
1.4 方法的调用
Ruby在调用方法时可以省略(),
|
|
虽然这种写法可以方便地输出多个字符串,但是如果遇到比较复杂的参数,使用()会更加便于理解。因此,建议在习惯Ruby的语法之前,不要使用省略()的写法。
1.5 puts 方法
puts方法与print方法稍有区别,puts方法在输出结果的末尾一定会输出换行符。
如:
|
|
不过,当参数为两个字符串时,各字符串末尾都会加上换行符,如
|
|
1.6 p方法
把字符串 “100” 和 100 输出区别开来,如
使用p方法时,换行符(\n)、制表符(\t)等特殊字符不会转义,会直接输出。
(原则上,p方法是提供给编程者使用的。)
1.7 中文的输出
魔法注释:(从Ruby 2.0开始,若没指定魔法注释,Ruby会默认使用UTF-8编码方式,因此,在Ruby 2.0中如果希望代码采用UTF-8的编码方式时,可省略魔法注释。)
以UTF-8编码方式在控制台输出结果,可像下面这样执行命令:
ruby -E UTF-8 脚本文件名 ← 脚本执行
irb -E UTF-8 ← irb启动
1.8 数值表示与计算
1.8.1 数值表示
Ruby中的字符串是以字符串对象的形式存在的。同样地,数值也是以“数值对象”的形式存在的。
四则运算:
1.8.2 数学相关的函数
Ruby中还可以使用数学函数,如平方根、sin和cos等三角函数、指数函数等。使用数学函数时,必须在函数前加上Math.标识。
(irb命令后的选项–simple-prompt会简化irb的输出结果。)
这个例子中,其结果值为“9.265358966049024 * 10的-5次幂”,也就是0.00009265358966049024。
1.9 变量
变量是程序里不可缺少的元素之一。可以将其理解为给对象贴上的标签。
变量还可以清晰地表示某个值所代表的含义。因此,为变量起一个容易理解的名称是非常重要的。建议大家平时多加注意,最好使用area、volume等意义明确的单词作为变量名。
传递给print方法的字符串参数也可以像下面这样写:
在字符串里使用#{…}这样的写法,可以把通过计算后得到的值嵌入到字符串中。输出结果里除了可以嵌入变量名,也可以嵌入”表面积 =#{(xy + yz + zx) 2}\n”这样的计算公式,得到的输出结果是一样的。
1.10 注释
我们在程序里可以写注释。注释虽然写在程序里面,但程序并不会执行注释的内容,也就是说,注释的内容对程序的执行结果不会产生任何影响。
Ruby 中用 # 表示(单行)注释的开始。
另外,行的开头用 =begin 和 =end 括起来的部分也是注释
如:
1.11 控制语句
控制语句大致可以分成以下几类。
- 顺序控制:按照程序的编写顺序,从头到尾执行。
- 条件控制:若某条件成立,则执行〇〇,否则执行××。
- 循环控制:在某条件成立之前,反复执行〇〇。
- 异常控制:发生某种异常时,执行〇〇。
1.12 条件判断:if~then~end
|
|
1.13 循环
1.13.1 while语句
|
|
例子
|
|
1.13.2 times 方法
|
|
|
|
times 方法被称为迭代器 (iterator).迭代器就是指用于执行循环处理的方法。