- 浏览: 84068 次
- 性别:
最近访客 更多访客>>
最新评论
-
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 1772先看一句代码: ruby 代码 (1..9). ... -
8.3 正则表达式
2007-02-13 06:13 1565一本入门小书,不想涉及正则表达式,但是正则表达式与Ruby语言 ... -
8.2 再说字符串
2007-02-13 06:07 1362一. 生成一个字符串 字 ... -
8.1 再说数组
2007-02-13 06:03 1489一. 建立一个数组 ruby 代码 #E8.1- ... -
7.4 require 和 load
2007-02-13 05:59 1365程序 E7.3-1.rb中先写了Me模块,然后include ... -
7.3 糅和(Mix-in) 与多重继承
2007-02-13 05:55 1814糅和,也译作混合插入,也许就称作 Mix-in 比较合适。 现 ... -
7.1 模块 7.2 命名空间
2007-02-13 05:50 22487.1 模块 我们常常把许 ... -
6.5 访问控制
2007-02-13 05:43 1202在Ruby里,要读取,或是改变对象的属性,唯一的途径是调用对象 ... -
6.4 单例方法
2007-02-13 05:16 1044同一份设计蓝图(类),不同的实例对象,可以表现出不同的行为特征 ... -
6.3 实例变量、类变量、类方法
2007-02-13 05:28 2279学习编程的过程,就是深化理解变量的过程。在面向对象编程中也不例 ... -
6.2 增强父类方法
2007-02-13 04:39 1053如果我们只是想增强父类的方法,而不是完全地替代它,就可以用关键 ... -
6.1 重载?重写
2007-02-13 04:11 1933在Java 中,重载(overload)和重写(overrid ... -
5.5 一些编码建议
2007-02-13 03:37 1162这里不是 Ruby语言的编 ... -
5.4 蓝图可以改变吗? ——动态语言
2007-02-13 03:28 782Ruby 是动态语言,你可以改变 Ruby 程序的结构,功能, ... -
5.3 详解变量—— 动态类型
2007-02-13 03:22 1201变量是什么?变量有哪些特征呢?学习编程的过程,就是深化理解变量 ... -
5.1 为什么是Ruby? 5.2 Ruby会长久么?
2007-02-13 03:16 10325.1 为什么是Ruby? 现 ... -
4.5 多态
2007-02-13 03:07 802不同的子类继承一个父 ... -
4.4 继承
2007-02-13 03:04 839如果我们要写一个学生 ... -
4.3 封装
2007-02-13 02:53 936让我们来定义一个类,类名是Person,类名首字母要大写;属性 ... -
4.1 两种思维方式 4.2 对象
2007-02-13 02:47 9394.1 两种思维方式 人们 ...
相关推荐
单词是编程语言的基本构建块,它们可以是关键字、标识符、常量、运算符或者分隔符。关键字是编程语言预定义的有特殊含义的词汇,如`begin`、`end`、`for`、`do`等。标识符是由用户定义的,用来表示变量、函数、类等...
#### 3.4 运算符和分隔符的识别 运算符和分隔符是词法分析中常见的符号。在给定的代码中,通过 `switch` 语句对单个字符进行分类处理。 ```cpp elseswitch(ch) { case '-': case '=': case '*': out ; break; //...
3.4 运算符和表达式 VB.NET支持多种运算符和表达式,用于进行数值计算、比较、逻辑判断等操作。 3.4.1 算术运算符 算术运算符是用来进行数值计算的运算符,共有7个:+、-、*、/、\、Mod 和^。
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 ...
##### 3.6 运算符与分隔符 - **运算符**:包括算术运算符(如加减乘除)、比较运算符(如等于`==`、不等于`!=`)、赋值运算符(如`=`)、逻辑运算符(如`and`、`or`、`not`)等。 - **分隔符**:如逗号``,`用于分割...
C 语言由一系列的基本词汇元素构成,包括标识符、关键字、常量、运算符、分隔符和空白符等。 ##### 2.1 标识符 标识符用于命名变量、函数、类型等。根据 C 语言标准,标识符由字母、数字或下划线组成,并且必须以...
词法记号是指 Java 语言中的基本单元,包括关键字、标识符、文字、操作符、分隔符和空白符。词法记号是 Java 语言的基础,用于构成 Java 程序的代码。 关键字是 Java 语言的预定义单词,例如 abstract、break、byte...
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 注释符...
本节涵盖了Python语言在词法层面的基本规则,包括行结构、其他标记符、标识符与关键字、文字、运算符和分隔符等内容。 ##### 2.1 行结构 Python中的代码行有着特殊的含义。例如,空行用来分割不同的逻辑段落,而...
定义了C++中可用的操作符和分隔符,包括算术运算符、逻辑运算符、位运算符等。 ##### 2.13 文字量 描述了C++中各种类型的文字量(literals),如整型文字、浮点型文字、字符串文字等,这些是程序中最常用的常量值。 ...