ESS多版本 【ESS进阶】第一章:变量和运算符(上)

本教程禁止转载。


第1节:认识Ruby语言

很多人可能在此之前都没有听说过Ruby,即便是学习过计算机相关专业的,可能更多的也是知道C家族、Java、Python等编程语言。Ruby,是个啥?1688708187215.png

Ruby 简介

Ruby是一种纯粹的面向对象编程语言。它由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)创建于1993年。
您可以在 www.ruby-lang.org 的 Ruby 邮件列表上找到松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)的名字。在 Ruby 社区,松本也被称为马茨(Matz)。
Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk 一样,是一个完美的面向对象语言。使用 Ruby 的语法比使用 Smalltalk 的语法要容易得多。

Ruby 的特性

  • Ruby 是开源的,在 Web 上免费提供,但需要一个许可证。
  • Ruby 是一种通用的、解释的编程语言。
  • Ruby 是一种真正的面向对象编程语言。
  • Ruby 是一种类似于 Python 和 Perl 的服务器端脚本语言。
  • Ruby 可以用来编写通用网关接口(CGI)脚本。
  • Ruby 可以被嵌入到超文本标记语言(HTML)。
  • Ruby 语法简单,这使得新的开发人员能够快速轻松地学习 Ruby。
  • Ruby 与 C++ 和 Perl 等许多编程语言有着类似的语法。
  • Ruby 可扩展性强,用 Ruby 编写的大程序易于维护。
  • Ruby 可用于开发的 Internet 和 Intranet 应用程序。
  • Ruby 可以安装在 Windows 和 POSIX 环境中。
  • Ruby 支持许多 GUI 工具,比如 Tcl/Tk、GTK 和 OpenGL。
  • Ruby 可以很容易地连接到 DB2、MySQL、Oracle 和 Sybase。
  • Ruby 有丰富的内置函数,可以直接在 Ruby 脚本中使用。
我们使用ESS制作的游戏,或者说RMXP制作的游戏,就是使用Ruby这个语言来写的。通过编写Ruby脚本,我们可以实现更多原版ESS本身不附带的功能。因为可以直接在RMXP中编写,我就不额外安装Ruby运行环境了。
 

ES泽洛

世末鸽者
2022/08/04
280
16
307
2,144
24
江苏
www.esplus.club

第2节:Ruby变量

数据类型

我们在小学数学就学过,数字可以分为整数和小数,整数和小数都属于数字的类型,也就是数值类型。数字不等价于数据,数据类型有很多,数值类型属于数据类型的一种。
Ruby的数据类型包括数值类型、字符串类型、数组、哈希类型、范围类型。

数值类型(Number)

(1)整型(Integer)
注意不是整容整形,是类型的型。整型就是整数类型,比如1、23、456,就都属于整型。
整型分两种,如果在 -2^30 到 2^30-1 以内,那么就是Fixnum类型;如果在 -2^62 到 2^62-1 但在前者之外,则是Bignum类型。
前面我们说1、23、456这些,显然就是Fixnum。
一般情况下,我们不需要关注太多,写一个常见的整数,它就是Fixnum整型。
(2)浮点型(Float)
浮点型就是我们常说的小数,比如3.14、0.99999,就是浮点型。

(3)字符串型(String)
字符串就是一串字符,虽然英文单引号''和英文双引号""都可以用来标记,但是一般推荐使用""来标记(也就是包起来),比如"今天天气不错"、"你的宝可梦归我了"。

符号类型(Symbol)

符号类型是Ruby特有的,它是不可变对象。在展现形式上,Symbol的第一个字符使用一个冒号,其它和字符串形式完全相同。
例如我们经常会见到:NORMAL、:MEWTWO、:MASTERBALL这种写法。

特殊值

大多数编程语言都会有一个布尔类型,只有两种值,一种true(真)一种false(假)。但是很不巧,Ruby没有布尔类型,truefalse以特殊值的身份存在。同样是特殊值的还有一个nil(空),nil 的含义是用于表示“缺失对象”的概念。

Ranges、数组、哈希我们第二章再讲。
 

ES泽洛

世末鸽者
2022/08/04
280
16
307
2,144
24
江苏
www.esplus.club

变量

在了解变量之前,我们得先了解内存。我们现在的电脑应该大部分都是8GB内存起步了,甚至16GB、32GB以上的都有,即便还有一些人电脑只有4GB内存,对于我们的普通数据来说,也是完全够用了。
如果说我现在要存一个图鉴总数,1010,这个数字我要开多大空间存它呢?给它开个1GB?1MB?1KB?当然不会由我们来开辟空间,上面我们学习的数据类型,就可以用来指定空间大小。

前面我们说整型Fixnum,它的范围是 -2^30 到 2^30-1,也就是2^31,计算结果是2147483648,也就是这么多字节(B),2097152KB2048MB2GB,这是它允许的最大范围,实际情况我们根本用不到这么多,可能10240就足够了,也就是说这个量级最大也就几KB。如果要存浮点型的数据,就会开辟浮点型的空间,字符串型的数据就会开辟字符串型的空间。

所以说,声明变量就是在内存中开辟一块空间,用于存放我们的数据。但是内存地址不好记,我们要用这个变量的时候不可能通过内存地址去找它,那就要给它取一个别名,这就是变量名。

不过Ruby语言的特点是,不需要显式声明变量的数据类型,会根据数据自动匹配类型

比如说,我要存A道具的价格为300元,B道具的价格为1000元,我就可以:

Ruby:
priceA = 300
priceB = 1000
注意:这里的=不是判断相等,而是赋值,将=右边的值赋给=左边。

定义完一个变量,我还得使用它啊,使用变量不是写它的值,而是写名,比如我要用ESS的控制台打印,就用事件简单的举例。
注:echoln作用为在控制台打印并换行。
1688714530368.png1688714554439.png
它就会在控制台打印变量里存的值。
1688714605258.png
 

在线成员

现在没有成员在线。

最新帖子

论坛统计

主题
517
消息
2,352
成员
3,007
最新成员
ZQLdw