`
yymmiinngg
  • 浏览: 180211 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

第五章、ruby语法之——注释、关键字、运算符、分融符

阅读更多

我们清楚ruby区分大小写,语法简明,代码简短精干,并且可读性较强。


下面让我们了解一下ruby的语法,这是学任何语言的开始(注释、关键字、运算符、分隔符等)。

 

一、注释与分行

 

Ruby中的注释有单行与多行两种,例如:

puts '以下是单行注释'
# 这行是单行注释,单行注释用"#"
=begin 
  多行注释可以用"=begin"和"=end"
  实际上,这也是Ruby的内嵌文档(Rdoc)注释,类似javadoc,可以用命令ri从源文件生产文档。 
=end
puts '=begin 和 =end 之前的是多行注释'

 

结果:
以下是单行注释
=begin 和 =end 之前的是多行注释

 

注:Rdoc是内嵌在ruby代码之中的,可以转换为html文档说明。类似javadoc。
ri是一个命令行程序,用来查看函数说明、类说明。函数说明、类说明应该放置在"=begin"和"=end"之中。"=begin"一定要写在行首,也就是说,这一行的前六个字符是"=begin",不允许有空格在这之前。

Ruby 中用分号";"来表示一个语句的结束。一行如果有多个语句,每个语句用分号隔开,而最后一个语句可以省略分号。换行符表示一行结束。

 

如果语句太长,可以用"\"连接行。例如:

p  "行连接开始>>>" \
"<<<结束" 

 

结果:
行连接开始>>><<<结束


二、关键字、运算符、分隔符

 

关键字、运算符、分隔符一起构成了一门编程语言的基本定义

 

Ruby中的常用分隔符如下:


符号

名称

用途


分号

用来分隔一行中的多个语句

 

()

圆括号

提高优先级;定义方法时容纳参数列表

 

" "

空格/分隔字符

在可省略"()"的地方代替"()"


逗号

隔开多个参数


将对象与它的方法隔开


::

双冒号

域作用符,将模块(类)与它的常量隔开

 

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的语法定义。

 

ruby中的运算符如下:优先级(由高到低)


能否重写
运算符
描述

 

Y    
[]、[]=
数组下标、数组元素赋值

 

Y
**
乘冥

Y
!、~、+、-
非、位非、一元加(正号)、负号

 

Y
*、/、%
乘、除、模

 

Y
+、-
加、减

 

Y
>>、<<
右移、左移

 

Y
&
位与

 

Y
^、|
位异或、位或

 

Y
<=、<、>、>=
小于等于、小于、大于、大于等于

 

Y
<=>、==、===、=~、!=、!~
各种相等判断(不能重写=~、!=、!~)

 

N
&&
短路与

 

N
||
短路或

 

N
..、...
区间的开始点到结束点

 

N
? :
三元条件运算符

 

N
=、%=、~=、/=、-=、+=、|=、&=、>>=、<<=、*=、&&=、||=、**=
各种赋值

 

N
defined?
检查类型

 

N
not
逻辑非

 

N
or、and
逻辑或、逻辑与

 

N
if、unless、while、until
判断与循环

 

N
begin、end
定义方法,类,模块的范围

 

值得注意的是,ruby中没有"++"、"--"一类的运算符,但可以通过"+=1"、"-=1"实现。

分享到:
评论

相关推荐

    前端学 Ruby:熟悉 Ruby 语法.pdf

    ### 前端学 Ruby:熟悉 Ruby 语法 #### Ruby 是什么? Ruby 是一种动态的、面向对象的脚本语言,由日本人松本行弘在 1995 年设计并开发。作为一种解释型语言,Ruby 具有简单易懂、功能强大且灵活的特点。Ruby 在 ...

    Ruby语言入门教程v1.0

    第三章是对Ruby语法结构的全面概览,涵盖了注释、分隔符、关键字、运算符等基础元素,以及变量作用域、类库、数据类型等核心概念。其中,条件判断语句和循环语句的讲解特别重要,它们是构建逻辑流程的基础。此外,...

    ruby 中文 教程 从入门到精通

    - **简洁明了**:Ruby语法简洁,易于理解,这使得程序员可以更快地上手并进行高效编码。 - **面向对象**:Ruby是一种纯粹的面向对象语言,所有的数据结构都是对象,包括整数、字符串等基本类型。 - **动态性**:...

    Ruby语言入门教程

    Ruby语法简洁明了,易于阅读和编写,非常适合初学者入门。此外,Ruby社区活跃,有大量的资源和工具可供学习者参考和使用,这些都是让编程学习变得容易的重要因素。 ##### 1.3 Ruby的由来 Ruby是由日本程序员松本行...

    Ruby Pocket Reference.pdf

    文档提到了一些关键内容的目录结构,例如运行 Ruby 解释器、使用 Unix/Linux 系统中的 Shebang 行、在 Windows 上关联文件类型、Ruby 的保留字、运算符、注释、数字、变量、符号、预定义变量、伪变量、全局常量、...

    Ruby入门教程

    提供了对Ruby语法的快速概览,包括注释、分隔符、关键字、运算符、变量作用域、类库、数据类型、赋值、条件语句、循环语句、异常处理和线程等。 在面向对象编程方面,教程讲解了对象、封装、继承、多态等概念,并...

    个人ruby学习笔记

    从给定的文件信息中,我们可以提炼出一系列关于Ruby编程语言的重要知识点,涵盖基础语法、变量类型、数值操作、条件语句、循环结构以及字符串处理等核心领域。 ### Ruby基础语法 #### 注释 Ruby提供了两种注释方式...

    Ruby袖珍参考手册

    了解这些保留字对于理解Ruby语法至关重要。 **2. Operators(运算符)** - Ruby支持多种运算符,包括算术运算符(如加、减、乘、除)、比较运算符(如等于、不等于)、逻辑运算符(如与、或、非)等。 **3. ...

    ruby简单笔记

    ### Ruby基础语法与特性 #### 一、动态类型与字符串支持 在Ruby中,所有事物都被视为对象,包括数字和字符串。与某些语言如Tcl只支持字符串不同,Ruby提供了丰富的数据类型支持,如整型(int),浮点型(double),...

    ruby 中文教程 源代码

    - **运算符**:包括算术运算符、比较运算符、逻辑运算符等。 - **变量的作用域**:局部变量、实例变量、类变量、全局变量等,每种变量都有不同的作用范围。 - **数据类型**:基本类型如整数、浮点数、字符串、布尔值...

    搞怪语言——Starry语言简介

    它可能包含关键字、标识符、运算符、注释、控制结构(如if语句、循环)等。 2. **数据类型**:所有语言都需要处理不同类型的数据,如整数、字符串、布尔值等。Starry语言的数据类型和它们的使用方式也是我们需要...

    Ruby中一些基本语法知识点的罗列汇总

    通过上述介绍,我们了解了Ruby中一些基础语法要点,包括程序结构、空白符处理、行尾规则、标识符定义、保留关键字、Heredoc文档以及BEGIN和END语句的使用。掌握这些基础知识对于初学者来说是非常重要的第一步,它能...

    Ruby 基本语言介绍

    ### Ruby 基本语言介绍 #### 一、Ruby 语言概述 Ruby 是一种简洁、高效且具有强大功能的编程语言。它最初由日本程序员松本行弘(Yukihiro Matsumoto)于1995年设计并开发。Ruby 的设计理念强调程序员的生产力和...

    javaSE代码实例

    第5章 数组——以不变应万变的哲学 59 5.1 数组的声明及创建 59 5.1.1 声明数组引用 59 5.1.2 创建数组对象 60 5.2 Java中数组的实现机制 61 5.3 数组的初始化 63 5.3.1 默认初始化 63 5.3.2 利用...

    Ruby的基本语法学习总结

    本文将深入探讨Ruby的基本语法,包括关键字、注释、数据类型、赋值与条件运算、输出与输入以及条件判断。 首先,关键词是Ruby编程中至关重要的部分。它们具有特殊的含义,不能用于定义变量或常量。例如,`module`...

Global site tag (gtag.js) - Google Analytics