`
凌川__
  • 浏览: 82280 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

3.2 分隔符 3.3 关键字 3.4 运算符

阅读更多

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>

<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  运算符

Ruby中的运算符如下:
 

优先级
能否重写
运算符
描述
最高
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    
 

分享到:
评论

相关推荐

    java编程规范(第三版)

    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 ...

    C#本质论(第3版)

    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 注释 ...

    Java2核心技术.part5

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...

    Java2核心技术.part3

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...

    Java2核心技术.part1

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3保存对象...

    Java2核心技术.part6

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...

    Java2核心技术.part4

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...

    Java2核心技术.part2

    12.4.2字符串记号处理器和带分隔符的文本 12.4.3读取带允隔符的输入 12.4.4 StringBuilder类 12.4.5随机存取流 12.5对象流 12.5.1存储可变类型的对象 12.5.2理解对象序列化文件格式 12.5.3...

    使用Android 系统测量软件开发技术 [武安状 主编] 2014年版

    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 注释符...

    C#经验技巧宝典1-5

    0041 巧用分隔符 20 0042 如何处理转义字符 21 0043 “;”结束符问题 21 0044 如何使用“??”操作符 22 2.4 表达式与关键词 22 0045 正确使用“&&”和“||” 22 0046 如何处理程序“溢出”错误...

    21天学通Java-由浅入深

    47 3.1.4 “/”:除法运算符 48 3.1.5 “%”:求余运算符 48 3.2 自增自减运算符 49 3.3 关系运算符 51 3.3.1 “==”、“!=” 51 3.3.2 “&gt;”、“&lt;”、“&gt;=”、“” 52 3.4 逻辑运算符 53 3.4.1 “&&”:与运算符 ...

    Ruby语言入门教程

    3.2 分隔符..............................................................................................................................15 3.3 关键字......................................................

    疯狂JAVA讲义

    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 ...

    C#编程经验技巧宝典

    19 &lt;br&gt;0038 巧用“^=”运算符 19 &lt;br&gt;0039 巧用位移运算符 20 &lt;br&gt;0040 使用条件运算符 20 &lt;br&gt;0041 巧用分隔符 20 &lt;br&gt;0042 如何处理转义字符 21 &lt;br&gt;0043 “;”结束符问题 21 ...

    Java开发技术大全 电子版

    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 ...

    java程序设计与开发课件

    2.1.3 分隔符······························· (12) 2.1.4 注释································ (12) 2.2 基本数据类型············...

    C语言FAQ 常见问题列表

    o 2.5 关键字 auto 到底有什么用途? o 2.6 我似乎不能成功定义一个链表。我试过 typedef struct { char *item; NODEPTR next; } *NODEPTR; 但是编译器报了错误信息。难道在C语言中一个结构不能包含指向自己的指针...

    你必须知道的495个C语言问题(PDF)

    3.4 这是个巧妙的表达式: a ˆ= b ˆ= a ˆ= b 它不需要临时变量就可 以交换a 和b 的值。. . . . . . . . . . . . . . . . . . . . . . . . . 14 3.5 我可否用括号来强制执行我所需要的计算顺序? . . . . . . . . ....

Global site tag (gtag.js) - Google Analytics