Ruby对象¶
Ruby是 面向对象 脚本语言,在Ruby中字符串、数值、时间等各种数据都是对象:
以 Ruby快速起步 最简单的一行代码程序为例:
print("Hello, Ruby.\n")
print
是方法, Hello, Ruby.\n
就是对象。在Ruby这样的面向对象的语言中,所有对象的操作,都是通过执行一种方法来实现的。
备注
和 print
方法类似但稍有区别的是 puts
方法:
puts
方法在输出结果的末尾一定会输出 换行符
p
方法¶
print
和 puts
方法,输出数值 1
和 字符串 "1"
时候都是单纯的 1 ,此时无法判断结果是数值对象还是字符串对象,但是 p
方法会区别:
irb(main):007:0> print(1)
1=> nil
irb(main):008:0> print("1")
1=> nil
irb(main):009:0> p(1)
1
=> 1
irb(main):010:0> p("1")
"1"
=> "1"
使用
p
方法可以方便程序调试:
print("Hello, \n\tRuby.\n")
p("Hello, \n\tRuby.\n")
执行
ruby ruby_object/print_p_debug
可以看到输出:
Hello,
Ruby.
"Hello, \n\tRuby.\n"
中文编码¶
Ruby脚本开头可以使用 魔法注释
(magic comment) 来指定程序编码,对于中文,可以使用 UTF-8
:
# encoding: UTF-8
从 Ruby 2.0 开始,如果没有指定魔法注释,则默认使用 UTF-8
编码
对于命令行, ruby
可以使用 -E
参数指定编码:
ruby -E UTF-8 <脚本文件名>
参考¶
「Ruby基础教程」