We walk and learn
Ruby version: 2.3.0
表现数据的基本单位。常用对象包括:
表示对象的种类。常用对象同类的对照表为:
对象 | 类 |
数值 | Numeric |
字符串 | String |
数组 | Array |
散列 | Hash |
正则表达式 | Regexp |
文件 | File |
符号 | Symbol |
[a-z]
或 _
开头。$
开头。@
开头。@@
开头。nil
、true
、false
、self
等都是伪变量。$
开头的特殊变量,其值在运行过程中被解释器修改,方便记录一些常用结果。如 $`
、$&
、$'
分别表示正则表达式匹配部分前边的字符串、匹配部分的字符串、匹配部分后边的字符串。常量(constant)以 [A-Z]
开头。对已经赋值的常量再进行赋值,会发生警告。
预定义常量(pre-defined constant)顾名思义,如 RUBY_VERSION
(运行版本)、RUBY_PLATFORM
(运行平台)、ARGV
(命令行参数)等。
注意 ARGV
是常量,在使用时不可更改。
另外以 _
开头的即使部分全部为大写内容,依然为变量。如 __NUM__
为变量,可以重复赋值。但 __LINE__
等为保留字,无法赋值。
__NUM__ = 1;
__NUM__ = 2; # => 2
__LINE__ = 1; # => SyntaxError
| __LINE__ | __ENCODING__ | __FILE__ | BEGIN | END |
| alias | and | begin | break | case |
| class | def | defined? | do | else |
| elsif | end | ensure | false | for |
| if | in | module | next | nil |
| not | or | redo | rescue | retry |
| return | self | super | then | true |
| undef | unless | until | when | while |
| yield | | | | |
a, b, c = 1, 2, 3 # => 1, 2, 3
a, b, *c = 1, 2, 3, 4, 5 # => 1, 2, [3, 4, 5]
a, *b, c = 1, 2, 3, 4, 5 # => 1, [2, 3, 4], 5
a, b = b, a
ary = [1, 2]
a, b = ary # => 1, 2
变量名、方法名使用 _
间隔,如 sort_by_name
。
类名、模块名使用大写字母间隔,如 HelloWorld
。