- 浏览: 82280 次
- 性别:
最近访客 更多访客>>
最新评论
-
Bernice_liu:
谢谢分享,受益匪浅,适合我——初学者
Ruby语言中文教程all in one -
何枫abc:
怎么感觉Ruby有点像C!!!
3.5 标识名和变量的作用域 3.6 类库 3.7 数据类型 -
何枫abc:
谢谢了!!!你写的很好,现在我正在学Ruby!!!
第二章 运行环境 -
yangzhihuan:
正想知道ruby是怎么样生成像javadoc那样的文档,多谢了 ...
3.1 注释与分行 -
whisper:
从lambda演算的角度说我们并不关心一个东西到底是什么,而只 ...
变量一定要有类型吗(一)
3.2 分隔符
关键字、运算符、分隔符一起构成了一门编程语言的基本定义。3.2 、3.3 、3.4节分别对分隔符、关键字、运算符作一些介绍。如果有不详细的地方,将在本书后面部分介绍;或者是因为这些不常用到;还有一种情况是:可以被其它常用语法定义代替。
Ruby中的常用分隔符如下:
符号<o:p></o:p> |
名称<o:p></o:p> |
用途<o:p></o:p> |
;<o:p></o:p> |
分号<o:p></o:p> |
用来分隔一行中的多个语句<o:p></o:p> |
()<o:p></o:p> |
圆括号<o:p></o:p> |
提高优先级;定义方法时容纳参数列表<o:p></o:p> |
<o:p> </o:p> |
空格<o:p></o:p> |
分隔字符;在可省略()的地方,代替()<o:p></o:p> |
,<o:p></o:p> |
逗号<o:p></o:p> |
隔开多个参数<o:p></o:p> |
.<o:p></o:p> |
点<o:p></o:p> |
将对象与它的方法隔开<o:p></o:p> |
::<o:p></o:p> |
紧连的两个冒号<o:p></o:p> |
|
<o:p></o:p>
3.3 关键字
Ruby中的关键字如下:
模块定义:module
类定义: class
方法定义:def , undef
检查类型:defined?
条件语句:if , then , else , elsif ,case ,when ,unless
循环语句:for ,in ,while ,until ,next, break ,do ,
redo ,retry ,yield
逻辑判断:not ,and ,or
逻辑值和空值:true ,false , nil
异常处理:rescue ,ensure
对象引用:super ,self
块的起始:begin/end
嵌入模块:BEGIN ,END
文件相关:__FILE__ , __LINE__
方法返回:return
别名: alias
BEGIN模块相当于C语言中的宏, END模块用来作一些收尾工作。有了require,include,应该取消BEGIN和END的语法定义。
3.4 运算符
优先级
|
能否重写
|
运算符
|
描述
|
最高
|
Y
|
[] []=
|
数组下标 数组元素赋值
|
|
Y
|
**
|
乘冥
|
|
Y
|
! ~ + -
|
非 位非 一元加 负号
|
|
Y
|
* / %
|
乘 除 模
|
|
Y
|
+ -
|
加 减
|
|
Y
|
>> <<
|
右移 左移
|
|
Y
|
&
|
位与
|
|
Y
|
^ |
|
位异或 位或
|
|
Y
|
<= < > >=
|
小于等于 小于 大于 大于等于
|
|
Y
|
<=> == === =~ != !~
|
各种相等判断(!= !~ 不能重写)
|
|
|
&&
|
短路与
|
|
|
||
|
短路或
|
|
|
.. ...
|
区间的开始点到结束点
|
|
|
? :
|
三元条件运算符
|
|
|
= %= ~= /= -= += |= &= >>= <<= *= &&= ||= **=
|
各种赋值
例如:a = 5;
b += 3( 意思是:b = b+3 );
|
|
|
defined?
|
检查类型
|
|
|
not
|
逻辑非
|
|
|
or and
|
逻辑或 逻辑与
|
|
|
if unless while until
|
判断与循环
|
最低
|
|
begin/end
|
定义方法、类、模块的范围 |
完整阅读,请看我写的 Ruby语言中文教程all in one
发表评论
-
8.4 迭代器、代码块、闭包
2007-02-13 06:25 1730先看一句代码: ruby 代码 (1..9). ... -
8.3 正则表达式
2007-02-13 06:13 1524一本入门小书,不想涉及正则表达式,但是正则表达式与Ruby语言 ... -
8.2 再说字符串
2007-02-13 06:07 1256一. 生成一个字符串 字 ... -
8.1 再说数组
2007-02-13 06:03 1382一. 建立一个数组 ruby 代码 #E8.1- ... -
7.4 require 和 load
2007-02-13 05:59 1312程序 E7.3-1.rb中先写了Me模块,然后include ... -
7.3 糅和(Mix-in) 与多重继承
2007-02-13 05:55 1773糅和,也译作混合插入,也许就称作 Mix-in 比较合适。 现 ... -
7.1 模块 7.2 命名空间
2007-02-13 05:50 22067.1 模块 我们常常把许 ... -
6.5 访问控制
2007-02-13 05:43 1119在Ruby里,要读取,或是改变对象的属性,唯一的途径是调用对象 ... -
6.4 单例方法
2007-02-13 05:16 1004同一份设计蓝图(类),不同的实例对象,可以表现出不同的行为特征 ... -
6.3 实例变量、类变量、类方法
2007-02-13 05:28 2240学习编程的过程,就是深化理解变量的过程。在面向对象编程中也不例 ... -
6.2 增强父类方法
2007-02-13 04:39 971如果我们只是想增强父类的方法,而不是完全地替代它,就可以用关键 ... -
6.1 重载?重写
2007-02-13 04:11 1884在Java 中,重载(overload)和重写(overrid ... -
5.5 一些编码建议
2007-02-13 03:37 1073这里不是 Ruby语言的编 ... -
5.4 蓝图可以改变吗? ——动态语言
2007-02-13 03:28 746Ruby 是动态语言,你可以改变 Ruby 程序的结构,功能, ... -
5.3 详解变量—— 动态类型
2007-02-13 03:22 1100变量是什么?变量有哪些特征呢?学习编程的过程,就是深化理解变量 ... -
5.1 为什么是Ruby? 5.2 Ruby会长久么?
2007-02-13 03:16 9725.1 为什么是Ruby? 现 ... -
4.5 多态
2007-02-13 03:07 768不同的子类继承一个父 ... -
4.4 继承
2007-02-13 03:04 796如果我们要写一个学生 ... -
4.3 封装
2007-02-13 02:53 892让我们来定义一个类,类名是Person,类名首字母要大写;属性 ... -
4.1 两种思维方式 4.2 对象
2007-02-13 02:47 8924.1 两种思维方式 人们 ...
相关推荐
3.11 分隔符 26 3.12 运算符 26 第4章 类型、值和变量 27 4.1 各种类型和值 28 4.2 基本类型和值 28 4.3 引用类型和值 35 4.4 类型变量 39 4.5 参数化类型 41 4.6 类型擦除 45 4.7 可具体化的类型 45 4.8 ...
1.2.4 语句和语句分隔符 1.2.5 空白 1.3 使用变量 1.3.1 数据类型 1.3.2 变量的声明 1.3.3 变量的赋值 1.3.4 变量的使用 1.4 控制台输入和输出 1.4.1 从控制台获取输入 1.4.2 将输出写入控制台 1.5 注释 ...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3保存对象...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...
12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...
Java语言基础3.1 Java简介3.1.1 Java概述3.1.2 Java语言特点3.1.3 Java组成与体系3.1.4 Java运行体系3.2 Java基础3.2.1 Java数据类型3.2.2 Java常量3.2.3 Java变量3.2.4 Unicode字符集3.3 Java基本元素3.3.1 注释符...
0041 巧用分隔符 20 0042 如何处理转义字符 21 0043 “;”结束符问题 21 0044 如何使用“??”操作符 22 2.4 表达式与关键词 22 0045 正确使用“&&”和“||” 22 0046 如何处理程序“溢出”错误...
47 3.1.4 “/”:除法运算符 48 3.1.5 “%”:求余运算符 48 3.2 自增自减运算符 49 3.3 关系运算符 51 3.3.1 “==”、“!=” 51 3.3.2 “>”、“<”、“>=”、“” 52 3.4 逻辑运算符 53 3.4.1 “&&”:与运算符 ...
3.2 分隔符..............................................................................................................................15 3.3 关键字......................................................
3.2.1 分隔符 45 3.2.2 标识符规则 47 3.2.3 Java关键字 47 3.3 数据类型分类 48 3.4 基本数据类型 48 3.4.1 整型 49 3.4.2 字符型 49 3.4.3 浮点型 51 3.4.4 布尔型 52 3.5 基本类型的类型转换 53 3.5.1 ...
19 <br>0038 巧用“^=”运算符 19 <br>0039 巧用位移运算符 20 <br>0040 使用条件运算符 20 <br>0041 巧用分隔符 20 <br>0042 如何处理转义字符 21 <br>0043 “;”结束符问题 21 ...
14.7.3分隔板(JSplitPane)使用示例482 14.7.4选项板(JTabbedPane)使用示例485 14.7.5工具栏(JToolBar)使用示例486 14.8常用组件488 14.8.1标签(Jlabel)使用示例488 14.8.2按钮(JButton)使用示例491 ...
2.1.3 分隔符······························· (12) 2.1.4 注释································ (12) 2.2 基本数据类型············...
o 2.5 关键字 auto 到底有什么用途? o 2.6 我似乎不能成功定义一个链表。我试过 typedef struct { char *item; NODEPTR next; } *NODEPTR; 但是编译器报了错误信息。难道在C语言中一个结构不能包含指向自己的指针...
3.4 这是个巧妙的表达式: a ˆ= b ˆ= a ˆ= b 它不需要临时变量就可 以交换a 和b 的值。. . . . . . . . . . . . . . . . . . . . . . . . . 14 3.5 我可否用括号来强制执行我所需要的计算顺序? . . . . . . . . ....