一、注释与分行

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

Ruby代码

puts

'以下是单行注释'

#

这行是单行注释,单行注释用"#"

=begin

多行注释可以用"=begin"和"=end"

实际上,这也是Ruby的内嵌文档(Rdoc)注释,类似javadoc,可以用命令ri从源文件生产文档。

=end

puts

'=begin

=end

之前的是多行注释'

puts

'以下是单行注释' # 这行是单行注释,单行注释用"#" =begin 多行注释可以用"=begin"和"=end"

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

=end 之前的是多行注释'

结果:

以下是单行注释

=begin 和 =end 之前的是多行注释

注:Rdoc是内嵌在ruby代码之中的,可以转换为html文档说明。类似javadoc。

ri是一个命令行程序,用来查看函数说明、类说明。函数说明、类说明应该放置在"=begin"和"=end"之中。"=begin"一定要写在行首,也就是说,这一行的前六个字符是"=begin",不允许有空格在这之前。

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

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

Ruby代码

p

"行连接开始>>>"

\

"<<

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中的nil关键字很特别。nil表示一个与其他语言中null相类似的空集的概念。和其他语言不通的是,ruby在逻辑判断过程中,只有nul和false表示假,其他所有表达式都表示真。

html菜鸟ruby,ruby的基础语法相关推荐

  1. Java菜鸟逆袭之基础语法下

    前提知识点2:原码,反码,补码  有符号数据表示法 • 在计算机内,有符号数有3种表示法:原码.反码和补码.所有数据的运算都是采用补码进行的. • 原码 • 就是二进制定点表示法,即最高位为符号位, ...

  2. 动静结合?Ruby 和 Java 的基础语法比较(入门篇)

    前言 这篇文章示例代码比较多, Java 程序员可以看到一些 Ruby 相关语法和使用,Ruby 程序员可以看看 Java 的基本语法和使用方法,本文比较长,将近万字左右,预计需要十几分钟,如果有耐心 ...

  3. python菜鸟基础教程-python基础菜鸟教程,Python的基础语法

    原标题:python基础菜鸟教程,Python的基础语法 什么是Python?Python是一门简单直观的编程语言,并且目前是开源的,可以方便任何人使用. Python的开发哲学:用一种方法,最好是只 ...

  4. 风变python小课 基础语法12 作业1_菜鸟的风变编程Python小课之路,这么学编程也可以?...

    原标题:菜鸟的风变编程Python小课之路,这么学编程也可以? 作为职场菜鸟,我感觉我就是现实生活里的孙弈秋,虽然学历没有他那么惨,但是在公司总感觉不那么受待见,可能因为我们这个行业本身竞争大吧,领导 ...

  5. html菜鸟ruby,Ruby 循环

    Ruby 循环 Ruby 中的循环用于执行相同的代码块若干次.本章节将详细介绍 Ruby 支持的所有循环语句. Ruby while 语句 语法 whileconditional[do]codeend ...

  6. ruby学习笔记(3)--语法层面的先见之明

    看了几天ruby,发现c#中很多一直被称道的语法特性,ruby早在几年前就有了: 1.c#中的params关键字 class Program{static void Main(string[] arg ...

  7. python基础教程菜鸟教程-python基础菜鸟教程,Python的基础语法

    原标题:python基础菜鸟教程,Python的基础语法 什么是Python?Python是一门简单直观的编程语言,并且目前是开源的,可以方便任何人使用. Python的开发哲学:用一种方法,最好是只 ...

  8. Ruby使用RabbitMQ(基础)

    Ruby使用RabbitMQ(基础) RabbitMQ documentation rabbitmq-tutorials rabbitmq-configure bunny 前提 最近刚刚接触到mq, ...

  9. python编程语法-Python学习笔记(Ⅰ)——Python程序结构与基础语法

    作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...

  10. Python学习笔记(Ⅰ)——Python程序结构与基础语法

    作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...

最新文章

  1. 修改Windows AD的LDAP查询限制
  2. delphi内存泄露查找工具之MemProof教程
  3. bzoj1231 [Usaco2008 Nov]mixup2 混乱的奶牛——状压DP
  4. hadoop 分片与分块,map task和reduce task的理解
  5. Flutter Exception降到万分之几的秘密 1
  6. Linux中 C++ main函数参数argc和argv含义及用法
  7. 荣耀20 PRO差评太多?原来是这个原因,回应:差评不冤
  8. SIFT特征提取分析(一)
  9. 设备文件BSP及嵌入式驱动开发笔记
  10. 华为主题包hwt下载_华为主题开发工具
  11. 基于ASP.NET的企业进销存管理系统
  12. 正在与拖延症病魔抗争中
  13. Chfs 文件共享工具
  14. linux解压rar文件,linux下解压rar文件
  15. 风口之下,隐形正畸还能走多远?
  16. 使用react制作点赞组件
  17. JAXWS CXF Spring + MyEclipse + Maven + Tomcat Byron自學視頻02
  18. 如何将一个现有的Vue网页项目封装成electron桌面应用(转载)
  19. 正面刚Apple Watch:Fitbit第一款真正的智能手表
  20. 智能卡操作系统的程序代码结构

热门文章

  1. FFmpeg的Android平台移植—编译篇(验证可用)
  2. android之activity跳转
  3. jeecgboot 前端环境搭建_94.精读Serverless 给前端带来了什么
  4. 阿里云服务器是如何计费的?有哪些计费方式
  5. 中点击按钮新建widget_如何在iOS14中创建堆叠小组件?
  6. java 计时器_【java内存】内存结构
  7. 七句话道出做人的底线【精辟】
  8. c语言中用递归求平方根,下列给定程序中,函数fun()的功能是:应用递归算法求某数a的平方根。求平方根的迭代公式如下: 例如 - 赏学吧...
  9. java 弹出另存为_java如何实现 io流传输过来的文件,提示另存为弹出窗口?
  10. python stdout stderr 一起输出_Python日志记录在stdout和stderr之间拆分